python爬虫--requests模块
requests模块
- 安装 :
pip install requests
- 作用:就是用来模拟浏览器上网的。
- 特点:简单,高效
- 其他的爬虫模块(old): urllib模块
一. 使用
- requests模块的使用流程:
- 指定url
- 发起请求
- 获取响应数据
- 持久化存储
#爬取搜狗首页的页面数据
import requests#1指定url
url = 'https://www.sogou.com/'#2.发起请求
response = requests.get(url=url)#3获取响应数据
page_text = response.text #text返回的是字符串类型的数据#持久化存储
with open('./sogou.html','w',encoding='utf-8') as fp:fp.write(page_text)
print('over!')
1.get请求使用
- 处理get请求的参数
- 需求:网页采集器
- 反爬机制:UA检测
- 反反爬策略:UA伪装
示例:1
import requests
wd = input('enter a word:')
url = 'https://www.sogou.com/web'#参数的封装
param = {'query':wd
}#UA伪装
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36'
}
response = requests.get(url=url,params=param,headers=headers)#手动修改响应数据的编码
response.encoding = 'utf-8'
page_text = response.text
fileName = wd + '.html'
with open(fileName,'w',encoding='utf-8') as fp:fp.write(page_text)
print(fileName,'爬取成功!!!')
2.post请求使用
示例2:
#破解百度翻译
url = 'https://fanyi.baidu.com/sug'
word = input('enter a English word:')
#请求参数的封装
data = {'kw':word
}
#UA伪装
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36'
}
response = requests.post(url=url,data=data,headers=headers)
#text:字符串 json():对象
obj_json = response.json()print(obj_json)
示例3:
#爬取任意城市对应的肯德基餐厅的位置信息
#动态加载的数据
city = input('enter a cityName:')
url = 'http://www.kfc.com.cn/kfccda/ashx/GetStoreList.ashx?op=keyword'
data = {"cname": "","pid": "","keyword": city,"pageIndex": "2","pageSize": "10",
}
#UA伪装
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36'
}
response = requests.post(url=url,headers=headers,data=data)json_text = response.textprint(json_text)
转载于:https://www.cnblogs.com/robertx/p/10930950.html
python爬虫--requests模块相关推荐
- Python爬虫---requests模块的基本使用
Python爬虫-requests模块的基本使用 基础 什么是爬虫? 就是通过编写程序模拟浏览器上网,然后让其去互联网上爬取数据的过程. 爬虫的分类 通用爬虫 抓取互联网中的一整张页面数据 聚焦爬虫 ...
- python爬虫requests模块
读书使人充实,讨论使人机智,笔记使人准确-.凡有所学,皆成性格. ---- (英国)培根 文章目录 简单的代码实现 requests.text与requests.content的区别 通过对 resp ...
- Python爬虫 — requests模块(1)
Requests 唯一的一个非转基因的 Python HTTP 库,人类可以安全享用. 警告:非专业使用其他 HTTP 库会导致危险的副作用,包括:安全缺陷症.冗余代码症.重新发明轮子症.啃文档症.抑 ...
- Python爬虫requests模块在线生成请求头
写爬虫的时候,请求头几乎是必写的,但是写起来有点繁琐,虽然不难,但是麻烦,所以这时候,一个自动生成请求头的方法就显得很重要了 在线生成请求头 https://curlconverter.com/ 使用 ...
- python 爬虫 requests模块 中的Cookies 验证 通过验证cookies模拟登陆豆瓣登陆
在爬取某些数据时,需要进行网页的登陆,才可以进行数据的抓取工作.Cookies登陆就像很多网页中的自动登陆功能一样,可以让用户第二次登陆时不在需要验证账号和密码的情况下进行登陆.在requests模块 ...
- python怎么爬取Linux作业,Python爬虫之使用Fiddler+Postman+Python的requests模块爬取各国国旗...
介绍 本篇博客将会介绍一个Python爬虫,用来爬取各个国家的国旗,主要的目标是为了展示如何在Python的requests模块中使用POST方法来爬取网页内容. 为了知道POST方法所需要传递的HT ...
- Python爬虫之使用Fiddler+Postman+Python的requests模块爬取各国国旗
介绍 本篇博客将会介绍一个Python爬虫,用来爬取各个国家的国旗,主要的目标是为了展示如何在Python的requests模块中使用POST方法来爬取网页内容. 为了知道POST方法所需要传 ...
- 数据采集与清洗基础习题(二)Python爬虫常用模块,头歌参考答案
数据采集习题参考答案,会持续更新,点个关注防丢失.为了方便查找,已按照头歌重新排版,朋友们按照头歌所属门类查找实训哦,该篇为Python爬虫常用模块. 创作不易,一键三连给博主一个支持呗. 文章目录 ...
- python爬虫—Requests
python爬虫-Requests 目录 python爬虫-Requests 一.Requests简介 1.requests简介 2.安装方式 二.GET请求 1.通用爬虫(全页面进行保存) text ...
- 【python】python爬虫requests库详解
1.安装:pip install requests 简介:Requests是一个优雅而简单的Python HTTP库,与之前的urllibPython的标准库相比,Requests的使用方式非常的简单 ...
最新文章
- UVA 12063 Zeros and Ones
- HDU1214 圆桌会议(找规律,数学)
- RHEL 集群(RHCS)配置小记 -- 文档记录
- Linux Shell脚本入门教程系列之(七)Shell输出
- datatables ajax错误,ajax datatable - DataTables警告:table id = example - 无法重新初始化DataTable(示例代码)...
- element引入的组件大小高度不对_ElementUI 在 按需引入时定义 default size?
- 开课吧课堂:超类变量如何引用子类对象?
- 马化腾亲身分享:腾讯兵法教你做一款高口碑的产品
- Google Chrome Top60 实用插件集合
- Windows Server 2012 R2 DirectAccess功能测试(3)—App2服务器安装及配置
- android打开iso,安卓手机端如何运行iso镜像文件
- mysql启动黑屏_红警win10黑屏和不显示菜单栏问题 只有声音没有图像的解决
- 数据库系统概论--第三章 关系数据库标准语言SQL
- 2021年12月四六级考试成绩批量查询Java
- 智能指针shared_ptr引用计数工作原理
- INCREMENTAL NETWORK QUANTIZATION: TOWARDS LOSSLESS CNNS WITH LOW-PRECISION WEIGHTS
- 单片机计数器实验代码c语言,单片机计数器功能实验程序
- makefile 初出茅庐-第1篇
- [华为matepad pro 12.6]实现平板编程(Xfce4篇)(Termux+Ubuntu21.04+Xfce4+VNC)
- 基于 MATLAB 、Simulink 仿真和 TrueTime 工具箱的网络控制系统的仿真方法 附完整代码