BeautifulSoup解析库select方法实例——获取企业信息

本文内容由浙江浦江中学方春林老师提供。

Requests是用Python语言编写,基于urllib,采用Apache2 Licensed开源协议的HTTP库。它比urllib更加方便,可以节约我们大量的工作,完全满足HTTP测试需求。Requests的哲学是以PEP 20的习语为中心开发的,所以它比urllib更加Pythonic。更重要的一点是它支持Python3哦!

1、requests简单用法

2、解析HTML库——BeautifulSoup简介

使用requests获取的是HTML页面,在HTML中除了html标记如,

外,还有很多 CSS代码。可以使用BeautifulSoup库解析HTML,利用BeautifulSoup对象的select方法可以筛选出css标记的内容。有如下几种方法获取内容:

①通过标签名查找

②通过类名查找

③通过id名查找

④组合查找。组合查找即和写 class 文件时,标签名与类名、id名进行的组合原理是一样的,例如查找p标签中,id等于link1的内容,二者不要用空格分开。

⑤属性查找。查找时还可以加入属性元素,属性需要用中括号括起来,注意属性和标签属于同一节点,所以中间不能加空格,否则会无法匹配到。不在同一节点的使用空格隔开,同一节点的不加空格。

以下面的HTML代码为例:

分析代码如下:

输出结果如下:

3、实例:爬取https://m.tianyancha.com/search/oc35-s2/p1中企业信息。

有了以上知识后,我们可以利用上述知识获取企业信息,在天眼查网站里有各类企业信息,打开https://m.tianyancha.com/search/oc35-s2,如下图是页面信息

我们的任务是获取企业信息,具体步骤如下:

1)获取页面信息,用google浏览器打开的页面中右键打开检查,依次点开 network--doc--headers中的Request URL,这个地址是我们要爬取页面的地址。

用res=requests.get(‘https://m.tianyancha.com/search/oc35-s2/’) 返回requests对象得到该页面所有内容。

2)分析内容,获取内容 查看源码后发现我们要找企业信息在一个“

”容器中,可以用select方法获取所有内容;

公司名称在“杭叉集团股份有限公司

”中,而其他信息都在

中,如下图

参考代码:

代码运行结果:

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20180118B0DN3E00?refer=cp_1026

扫码关注云+社区