今天实战运用requests
# -*- coding: utf-8 -*- import requests url="http://www.sogou.com" respond=requests.get(url)#1 respond.encoding=respond.apparent_encoding print(respond.text)
1、respond.encoding作用从http header中提取响应内容编码。若header中没有charset字段则默认为ISO-8859-1编码模式,则无法解析中文,有可能会出现乱码。respond.apparent_encoding作用为从内容中分析出的响应内容编码。所以使用respond.encoding=respond.apparent_encoding
运行结果:
这里爬爬我博客的头像
①首先获得图片链接
import requests src = 'https://avatar.csdnimg.cn/D/2/1/1_m0_60960867_1633660031.jpg' respond = requests.get(src)#1 with open('touxiang.jpg', 'wb') as f:#2 f.write(respond.content)#3 print('搞定!!')
#1 先用requests库的get请求访问图片链接
#2 以touxiang为文件名,'wb'为读写类型,这里是写入。('rb'为读取)
#3 然后用respond.content接收图片内容,然后再写入(write)
运行结果:
就出现了
点开就可以看到我自己的头像
import requests url='https://www.sogou.com/web' kw=input('enter a word: ')#1 header={ 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36 Edg/95.0.1020.53' }#2 param={ 'query':kw } respond=requests.get(url=url,params=param,headers=header) content=respond.text#3 fileName=kw+'.html'#4 with open(fileName,'w',encoding='utf-8') as f: f.write(content) print(fileName,'搞定!!')
我们使用所爬网站中的User-Agent来进行伪装,让它以为我们是它本身的一部分,从而使得我们能够成功爬取我们需要的信息。
#1 输出提示词并键盘输入关键字
#2 请求头,打开搜狗搜索,鼠标右键选择‘检查’,在网络中,点击搜索,可得到请求头。
#3 请求url对应的页面内容
#4 设置文件名为键盘输入的关键字,并且为html文件
运行结果:
然后打开html文件