(学习笔记) 爬虫入门(4)

本次内容学自莫烦Python2.4


        这次要爬的是百度百科的网站,

        先通过第一个页面,抓取出多个符合条件的链接放入一个list,然后再从list随机选出一个链接把它打印出来,并以它作为新的目标进行重复操作。

https://baike.baidu.com/item/%E7%BD%91%E7%BB%9C%E7%88%AC%E8%99%AB/5162711


要爬取的第一个网站首页:

图1 网站首页



        这次并不像之前一样直接用一个完整的网站,而是将它分成两部分。

图2 网站的处理

       base_url是百度百科的首页,his(history)就是我收集到的网站的集合。


因为url的处理不一样,所以解析的步骤稍有区别:

图3 解析网站

        这里用find('h1'),而不是findAll,是因为这里的第一个h1就是网站的主题,这样可以防止抓到无用信息。

         这里抓到的信息就是这个:

图4 抓到的信息


然后就是筛选出需要的信息:

图5 筛选信息

        '_blank'属性在于可个打开一个新的tag,也就是指这是另一个百度词条,我们要重新进入的就是这类网站。

        至于为什么'href'要这么处理呢

        第一,在标签中,其信息是这样的:

        如果你不嫌累到我们的soup中去找,也是这个样子的。

        第二,要过滤掉这类信息:

图7 要过滤的信息


再回到刚刚的代码:

图8 if判断

        这里的if就是法sub_urls不为空时,从中随机选一个段加入到list中,用于作下一个我们要爬取的链接。(如果是用jupyter notebook的话,这里每运行一次,list中的字符个数就会加一个)


以上内容重复20次:

图9 以上内容重复20次

这里的图没截完,实际有20个链接。

因为每次取的是随机的一个序列,所以每运行一次,结果都不一样,但第一个肯定是‘网络爬虫’

你可能感兴趣的:((学习笔记) 爬虫入门(4))