确定爬取流程
- 手动翻页观察URL结构,构造URL列表。
- 发送request请求包。
- 解析response回复包,提取所需数据。
- 存储数据。
1.观察URL,构造url列表
第一页:https://tieba.baidu.com/f?kw=图片&ie=utf-8&pn=0
第二页:https://tieba.baidu.com/f?kw=图片&ie=utf-8&pn=50
第三页:https://tieba.baidu.com/f?kw=图片&ie=utf-8&pn=100
其中ie=utf-8表示用 UTF-8 字符集显示页面,这个参数对链接整体并没有什么影响。
发现kw是贴吧名,pn表示第几页,只不过数字扩大了五十倍。
然后我们构造url列表
def url_list():
url = "https://tieba.baidu.com/f?"
urllist = []
for page in range(startPage-1,endPage):
yema = page*50
link = url + "kw=" + str(tieba_name) + "&" + "pn=" + str(yema)
urllist.append(link)
return urllist
2.发送请求包,并从回复包里提取所需数据
def get_html(url,path):
response = requests.get(url