import urllib.request
import urllib.parse
import os
import time
# 输入贴吧的名字,输入起始页码和结束页码
baming = input('请输入贴吧的名字-')
start_page = int(input('请输入起始页码-'))
end_page = int(input('请输入结束页码-'))
url = 'https://tieba.baidu.com/f?'
# 创建文件夹
os.mkdir(baming)
# 循环爬取每一页的内容
for page in range(start_page, end_page + 1):
print('正在爬取第%s页......' % page)
# 根据page计算出来pn
pn = (page-1) * 50
# get参数写出来
data = {
'ie': 'utf8',
'kw': baming,
'pn': pn
}
# 处理这个data
query_string = urllib.parse.urlencode(data)
# 拼接url
url_tmp = url + query_string
# print(url_tmp)
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36',
}
# 构建请求对象
request = urllib.request.Request(url=url_tmp, headers=headers)
# 发送请求,得到响应
response = urllib.request.urlopen(request)
# 保存到指定的文件夹里面的指定的文件
# 生成特定的文件名
filename = '%s-第%s页.html' % (baming, page)
# 生成filepath
filepath = os.path.join(baming, filename)
# 保存到文件中
with open(filepath, 'wb') as fp:
fp.write(response.read())
print('结束爬取第%s页' % page)
time.sleep(5)

gfg.jpeg