位置: 编程技术 - 正文
推荐整理分享Python使用Beautiful Soup包编写爬虫时的一些关键点(beautiful python),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:PYTHON使用缩进来体现代码之间的逻辑关系,python中beautifulsoup的用法,python中beautifulsoup,python中beautifulsoup的用法,s='python is beautiful!',s='python is beautiful!',s='python is beautiful!',python中beautifulsoup的用法,内容如对您有帮助,希望把文章链接给更多的朋友!
1.善于利用soup节点的parent属性
比如对于已经得到了如下html代码:
的soup变量eachMonthHeader了。
想要提取其中的
Month的label的值:November
和Year的label的值:
最简单,也是最省事的办法是,直接搜两个label,然后肯定会找到这两个label,然后分别对应着Month和Year的label,然后获得对应的string即可:
但是很明显,这样的逻辑性很不好,而且万一处理多个这样的soup变量,而且两者的顺便颠倒了,那么结果也就错误了。
此时,可以考虑利用soup变量的parent属性,从一个soup变量本身,获得其上一级的soup变量。示例代码如下:
我们再来看一个例子:
这个例子中,<HEAD> Tag的parent是<HTML> Tag. <HTML> Tag 的parent是BeautifulSoup 剖析对象自己。 剖析对象的parent是None. 利用parent,你可以向前遍历剖析树。
2.当解析非UTF-8或ASCII编码类型的HTML时,需要指定对应的字符编码
当html为ASCII或UTF-8编码时,可以不指定html字符编码,便可正确解析html为对应的soup:
当html为其他类型编码,比如GB的话,则需要指定相应的字符编码,BeautifulSoup才能正确解析出对应的soup:
比如:
Python的爬虫包Beautiful Soup中用正则表达式来搜索 BeautifulSoup使用时,一般可以通过指定对应的name和attrs去搜索,特定的名字和属性,以找到所需要的部分的html代码。但是,有时候,会遇到,对于要处理
实践Python的爬虫框架Scrapy来抓取豆瓣电影TOP 安装部署Scrapy在安装Scrapy前首先需要确定的是已经安装好了Python(目前Scrapy支持Python2.5,Python2.6和Python2.7)。官方文档中介绍了三种方法进行安装,我
深入剖析Python的爬虫框架Scrapy的结构与运作流程 网络爬虫(WebCrawler,Spider)就是一个在网络上乱爬的机器人。当然它通常并不是一个实体的机器人,因为网络本身也是虚拟的东西,所以这个机器人其实
标签: beautiful python
本文链接地址:https://www.jiuchutong.com/biancheng/381291.html 转载请保留说明!友情链接: 武汉网站建设