位置: 编程技术 - 正文

Python使用Beautiful Soup包编写爬虫时的一些关键点(beautiful python)

编辑:rootadmin

推荐整理分享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即可:

Python使用Beautiful Soup包编写爬虫时的一些关键点(beautiful python)

但是很明显,这样的逻辑性很不好,而且万一处理多个这样的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)就是一个在网络上乱爬的机器人。当然它通常并不是一个实体的机器人,因为网络本身也是虚拟的东西,所以这个机器人其实

本文链接地址:https://www.jiuchutong.com/biancheng/381291.html 转载请保留说明!

上一篇:Python制作爬虫抓取美女图(python爬虫怎么做)

下一篇:Python的爬虫包Beautiful Soup中用正则表达式来搜索(python的爬虫模块)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络