python爬虫获取简单页面

我们讲过开发者工具可以截取B/S交互的数据包,那么这节我们用python3抓取其截取的百度数据包
目的:通过python3抓取百度的网页
工具:pycharm(下载地址:https://www.jetbrains.com/pycharm/download/#section=windows)

安装网络库requests

requests是一个相比于urllib与urllib3更加强大的网络库,它可以发送请求并接收服务端的响应
首先打开pycharm创建一个新项目
python爬虫获取简单页面_第1张图片
在settings看看设置
python爬虫获取简单页面_第2张图片
python爬虫获取简单页面_第3张图片
在下角的终端里下载requests模块
python爬虫获取简单页面_第4张图片
python爬虫获取简单页面_第5张图片
因为我这已经下载了,所以它不用下载
没有安装的如下图
python爬虫获取简单页面_第6张图片
查看settings里面有没有requests模块包,下图已经存在了
python爬虫获取简单页面_第7张图片
新建python文件
python爬虫获取简单页面_第8张图片

信息读取

准备好requests包,我们就开始解析数据了,通过开发者工具截取百度的数据包

python爬虫获取简单页面_第9张图片
我们可以看到这个www.baidu.com这个请求页面,右栏的Request URL为’https://www.baidu.com/’,请求方式为GET请求,状态码为200(200代表请求已经成功)
再看request headers
python爬虫获取简单页面_第10张图片
request headers中其它我就不赘述了,经常使用的是User Agent,因为它代表了爬虫程序的伪装
还有cookie,但它在这里不是很重要,因为它是用于保持会话的,但咱这不是需要通过登陆才能获取内容的界面,所以不用管它

python代码

import requests
#首先导入模块requests
url='https://www.baidu.com/'
#url为https://www.baidu.com
headers={
    'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36'
}
#请求头在网页中显示了很多,我们用字典表示,其中的请求头描述为goodle的User-Agent,用来欺骗服务器
request=requests.get(url,headers=headers)
#请求方式为get,所以我们request.get,url与headers是请求的参数,我们需要放在其中,请求结果传给request变量
print(request.text)
#在console中输出text文件

输出结果为这样,正确爬取了数据包
python爬虫获取简单页面_第11张图片
如果想要把它保存到文件中,可以使用with open

import requests
#首先导入模块requests
url='https://www.baidu.com/'
#url为https://www.baidu.com
headers={
    'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36'
}
#请求头在网页中显示了很多,我们用字典表示,其中的请求头描述为goodle的User-Agent,用来欺骗服务器
request=requests.get(url,headers=headers)
#请求方式为get,所以我们request.get,url与headers是请求的参数,我们需要放在其中,请求结果赋值为request变量
with open(r'C:\Users\11546\Desktop\新建文件夹\1.txt','w') as f:
    f.write(request.text)
#打开桌面下新建文件夹下的1.txt,然后把数据写入进去

运行看看
python爬虫获取简单页面_第12张图片
成功!

引申

请求数据中有很多内容,不仅仅text内容
python爬虫获取简单页面_第13张图片
这些都是响应数据,大家可以尝试一下

你可能感兴趣的:(爬虫,python,爬虫,pycharm)