Python爬取百度备案信息

古城微笑少年丶 2021-10-24 01:26 710阅读 0赞

Python爬取百度备案信息

首先使用pip install requests和pip install bs4安装两个必备的库(注意:你的lxml可能没有安装,如果运行错误的话尝试使用pip install lxml安装lxml,这个库是解析HTML的)
这里我使用的编译器是Spyder,当然你也可以直接在Python自带的IDE中运行
在这里插入图片描述
爬虫的核心是
1.伪造请求头
2.获取目标网站的地址
3.找到需要爬取内容的DOM位置
4.进行构造遍历爬取(当然这个爬取备案信息的很简单,不需要各种提取操作)
在这里插入图片描述

  1. // 完整代码及解释
  2. import requests
  3. from bs4 import BeautifulSoup
  4. //伪造请求头,防止服务器端触发反爬机制
  5. headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)\ AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36'}
  6. //爬取目标网站的地址
  7. res = requests.get('https://icp.aizhan.com/www.baidu.com/', headers = headers)
  8. try:
  9. //BeautifulSoup可以读取HTML文件进行解析
  10. soup = BeautifulSoup(res.text, 'lxml')
  11. //找到需要爬取内容的DOM位置
  12. div = soup.find('div', attrs = { 'id':'icp-table'})
  13. td_list = div.find_all('td')
  14. //使用:nth-child(n) 选择器匹配父元素中的第 n 个子元素
  15. //https://icp.aizhan.com/www.baidu.com/
  16. //icp-table > table > tbody > tr:nth-child(3) > td:nth-child(2) > span
  17. icp = soup.select('#icp-table > table > tbody > tr:nth-of-type(3) > td:nth-of-type(2) > span')
  18. if len(icp):
  19. print(icp[0].get_text())
  20. //遍历 构造打印出来的内容
  21. for i in range(0, len(td_list), 2):
  22. info = td_list[i].text + ":" + td_list[i + 1].text
  23. print(info)
  24. print("-" * 20)
  25. except ConnectionError:
  26. print("网站连接失败")

发表评论

表情:
评论列表 (有 0 条评论,710人围观)

还没有评论,来说两句吧...

相关阅读

    相关 python爬虫:云盘

     在网上看到的教程,但是我嫌弃那个教程写的乱(虽然最后显示我也没高明多少,哈哈),就随手写了一个 主要是嫌弃盘搜那些恶心的广告,这样直接下载下来,眼睛清爽多了。 用p