本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
第一步:导入爬虫常用的requests,用处是对中文进行url编码。
import re import time import requests # url编码和解码 from urllib import parse
第二步:设置url地址,模拟浏览器(这一步可以不用)防止被认出是爬虫程序。
###网址 url="https://s.weibo.com/top/summary?Refer=top_hot&topnav=1&wvr=6" ###模拟浏览器,这个请求头windows下都能用 header={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36'}
第三步:利用req uests库的get()和lxml的etr ee()来获 取网页代码
###获取html页面 html=etree.HTML(requests.get(url,headers=header).text)
第四步:定义函数,用来爬取某一条热搜,第二行是合成selector用的,后四行 if else 是用来对齐输出的
def OneHot(i): findhot = '#pl_top_realtimehot > table > tbody > tr:nth-child('+str(i)+') > td.td-02 > a' hot = r.html.find(str(findhot),first = True) if(i<=10): print(str(i-1)+' '+hot.text) else: print(str(i-1)+' '+hot.text)
第五步:爬取热搜
for i in range(1,52): OneHot(i)
以上就是python爬虫爬取微博热搜的过程,相比较其他爬虫,爬取微博热搜算是比较简单的过程,大家可以拿来练练手哦~
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试