爬取博客园有关爬虫的文章
程序员文章站
2022-06-20 23:34:48
最近自己的测试小圈子里都在讨论爬虫,发现我装逼都困难了许多,所以决定快速补充一下这方面的东西。 到网上找了点视频,实在是看不进去(主要是对装逼没有什么帮助),然后又由于略微懒得原因就写了这个小东西。 没有封装,流水账式写法,比较简陋,各位客官(dalao)见谅。 可以给中间加一小段,写到文档里,保存 ......
最近自己的测试小圈子里都在讨论爬虫,发现我装逼都困难了许多,所以决定快速补充一下这方面的东西。
到网上找了点视频,实在是看不进去(主要是对装逼没有什么帮助),然后又由于略微懒得原因就写了这个小东西。
没有封装,流水账式写法,比较简陋,各位客官(dalao)见谅。
1 # coding: utf-8 2 import requests 3 from bs4 import beautifulsoup 4 # 定义变量,这里可以用一个 5 d = 1 6 p = 0 7 k = 0 8 reptilian_url = [] 9 reptilian_title = [] 10 # 打开session 11 s = requests.session() 12 # 伪装头部 13 h = { 14 'user-agent':'mozilla/5.0 (windows nt 10.0; wow64) applewebkit/537.36 (khtml, like gecko) chrome/55.0.2883.87 ubrowser/6.2.4094.1 safari/537.36', 15 'accept-encoding':'gzip, deflate, br' 16 } 17 # 从第1页到最大页数的url,总共有200页,这个数值也可以从页面读取 18 while d in range(200): 19 url = 'https://www.cnblogs.com/cate/python/%d'% d 20 r = s.get(url, headers=h) 21 t = r.text 22 soup = beautifulsoup(t, 'lxml') 23 list = soup.select('div.post_item_body h3') 24 list2 = soup.find_all(attrs={'class':"titlelnk"}) 25 while p < d: 26 # 把标题写入空列表 27 for z1 in list: 28 reptilian_title.append(z1.string) 29 # 把url写入空列表 30 for u1 in list2: 31 reptilian_url.append(u1['href']) 32 p += 1 33 d += 1 34 # 打印爬取的总数据量 35 print(len(reptilian_title)) 36 # 加入筛选条件,包含爬虫字段的帖子 37 while k < len(reptilian_title): 38 if '爬虫' in reptilian_title[k]: 39 print(k+1,'%s'%reptilian_title[k],'','%s'%reptilian_url[k]) 40 print('===============================') 41 k += 1
可以给中间加一小段,写到文档里,保存下来偷偷看。
1 reptilian = open('1.txt', 'a') 2 reptilian.writelines(['标题:',reptilian_title,' ','url:',reptilian_url]) 3 reptilian.close()
上一篇: 第十节 抽象方法和抽象类 [10]
下一篇: ps怎么快速统计文件图层数量?