BeautifulSoup使用注意事项
BeautifulSoup使用注意事项
BeautifulSoup是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省数小时甚至数天的工作时间.
一个爬取中国天气网数据的简单示例如下:
(http://www.weather.com.cn/weather/101010100.shtml网页中的数据使用BeautifulSoup解析)
import requests
from bs4 import BeautifulSoup resp = requests.get('http://www.weather.com.cn/weather/101010100.shtml')
resp.encoding = 'utf-8'
beautifulsoup = BeautifulSoup(resp.text, 'html.parser')
此时,beautifulsoup数据类型为bs4.BeautifulSoup
available_weather = beautifulsoup.find("div", {'id': '7d'}).find('ul').find_all('li')
此时,available_weather数据类型为bs4.element.ResultSet
for item in available_weather:
date = item.find('h1').string
  此时,date数据类型为 bs4.element.NavigableString
   总之,获得的数据类型不是string
    需要作为字符串使用时,可使用以下方式转换:
date = ''.join(date)
BeautifulSoup使用注意事项的更多相关文章
- Python中第三方的用于解析HTML的库:BeautifulSoup
		
背景 在Python去写爬虫,网页解析等过程中,比如: 如何用Python,C#等语言去实现抓取静态网页+抓取动态网页+模拟登陆网站 常常需要涉及到HTML等网页的解析. 当然,对于简单的HTML中内 ...
 - python常见的模块
		
Python内置模块名称 功能简介 详细解释/使用示例 os 和操作系统相关 os.path — Common pathname manipulations sys 和系统相关 sys — Syste ...
 - Python内置模块和第三方模块
		
1.Python内置模块和第三方模块 内置模块: Python中,安装好了Python后,本身就带有的库,就叫做Python的内置的库. 内置模块,也被称为Python的标准库. Python 2.x ...
 - python安装BeautifulSoup注意事项
		
好久没有写爬虫了,最近用Python的BeautifulSoup4.Scrapy分别对以前写的spider进行优化,发现python3.5后这些库变化了很多,遇到了许多问题,在这里做一下总结. 切换环 ...
 - Spider_Man_4 の BeautifulSoup
		
一 介绍 Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你 ...
 - python学习之----BeautifulSoup的find()和findAll()及四大对象
		
BeautifulSoup 里的find() 和findAll() 可能是你最常用的两个函数.借助它们,你可以通 过标签的不同属性轻松地过滤HTML 页面,查找需要的标签组或单个标签. 这两个函数非常 ...
 - 【python】BeautifulSoup的应用
		
from bs4 import BeautifulSoup#下面的一段HTML代码将作为例子被多次用到.这是 爱丽丝梦游仙境的 的一段内容(以后内容中简称为 爱丽丝 的文档): html_doc = ...
 - python里正则表达式基础及注意事项
		
感觉正则匹配是一件很酷的事,用得好的话可以极大地提高编程效率.虽然在html中BeautifulSoup更好用一些,但有时候还是需要使用正则匹配.所以就此做一些学习和使用过程中的笔记. python有 ...
 - jQuery UI resizable使用注意事项、实时等比例拉伸及你不知道的技巧
		
这篇文章总结的是我在使用resizable插件的过程中,遇到的问题及变通应用的奇思妙想. 一.resizable使用注意事项 以下是我在jsfiddle上写的测试demo:http://jsfiddl ...
 
随机推荐
- audio标签的自动播放(ios)
			
0.应用场景 前端移动端开发,经常有播放音乐的需求.比如我有公司做过类似支付宝的年度账单,功能是用户在查看年度账单的过程中播放轻音乐. 1.audio标签播放mp3 (一)常用属性和API介绍 1.c ...
 - [转]Calling an OData Service From a .NET Client (C#)
			
本文转自:https://docs.microsoft.com/en-us/aspnet/web-api/overview/odata-support-in-aspnet-web-api/odata- ...
 - java中equal和==的比较
			
equals 方法是 java.lang.Object 类的方法. 有两种用法说明: (1)对于字符串变量来说,使用“==”和“equals()”方法比较字符串时,其比较方法不同. “==”比较两个变 ...
 - Odata简介和Demo
			
转:http://www.cnblogs.com/shanyou/archive/2013/06/11/3131583.html 在SOA的世界中,最重要的一个概念就是契约(contract).在云计 ...
 - Vue学习笔记:编译过程
			
碰到是否有template选项时,会询问是否要对template进行编译: 在template编译(渲染成UI)有一个过程.模板通过编译生成AST,再由AST生成Vue的渲染函数,渲染函数结合数据生成 ...
 - 二、socket编写简单BIO的HTTP服务器
			
一.目标 诸如tomcat等web服务器中间件简化了我们web的开发成本,但有时候我们或许并不需要这么一个完备的服务器,只是希望做一个简单地处理或者做特殊用途的服务器. 本文将提供一个HTTP的服务器 ...
 - 撩课-Web大前端每天5道面试题-Day10
			
1. px和em的区别? px和em都是长度单位; 区别是: px的值是固定的,指定是多少就是多少, 计算比较容易. em得值不是固定的,并且em会继承父级元素的字体大小. 浏览器的默认字体高都是16 ...
 - HTTP完整请求过程
			
重要申明:感谢原文作者——沐风的心,想看原文请戳这里!我借鉴了原文的页面请求流程,原文见时序图之后正文. 重要申明:感谢原文作者——一行两行,想看原文请戳这里!我借鉴了原文的完整HTTP请求流程. 增 ...
 - HDU 2680(最短路)(多个起始点)
			
这道题也是死命TLE.. http://acm.hdu.edu.cn/showproblem.php?pid=2680 /* 使用pair代替结构 */ #include <iostream&g ...
 - Thymeleaf学习记录(5)--运算及表单
			
Thymeleaf文本及预算: 字面 文本文字:'one text','Another one!',... 号码文字:0,34,3.0,12.3,... 布尔文字:true,false 空字面: nu ...