#引入requests库
import requests
#根据url发起请求,获取服务器响应文件 url:待抓取的url
def load_page(url):
#这里的请求头header可以是任意一个网站上面的请求头,进入开发者模式就可以找到,推荐使用google浏览器,比较方便查看#
header = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.5359.95 Safari/537.36 QIHU 360SE'}
#发送get请求
response = requests.get(url, headers = header)
#返回html源代码
return response.text
#将html文件保存为网页文件
def save_file(html, filename):
print('正在保存' + filename)
with open(filename, 'w', encoding='utf-8') as file:
file.write(html)
#调度函数
def heima_fornum(begin_page, end_page):
for page in range(begin_page, end_page + 1):
#组合页面完整的url
url = f'http://bbs.itheima.com/forum-568-{page}.html'
#上面的url以黑马程序员论坛的大数据技术交流模块为例子
#文件名称
file_name = '第' + str(page) + '页.html'
#抓取网页数据
html = load_page(url)
#保存网页数据
save_file(html, file_name)
#定义主函数
if __name__ == '__main__':
begin_page = int(input('请输入起始页:'))
end_page = int(input('请输出结束页:'))
heima_fornum(begin_page, end_page)
输入完成后运行将会是这样:
例如:
输入起始页码”1″
结束页码”6″
那么将会保存1—6页的网络代码
保存后也页面可以本地文件夹中查看
打开任意一个本地网页文件,将可以看到论坛上对应的内容
这样看来是不是很简单呢
文章出处登录后可见!
已经登录?立即刷新