爬虫之requests库的使用
get基本请求
响应对象的属性:
# 获取响应对象中的内容是str格式
text
# 获取响应对象中的内容是二进制格式的
content
# 获取响应状态码
status_code
# 获取响应头信息
headers
# 获取请求的url
url
import requests url = "https://www.cnblogs.com/songzhixue/p/10717975.html" # 获得一个响应对象 response = requests.get(url=url) # 调用响应对象中的text属性获取请求结果为字符串形式 print(response.text)
带参数的get请求
方式一:
import requests url = "http://www.baidu.com/s?wd=周杰伦" # requests模块可以自动将url中的汉字进行转码 response = requests.get(url).text with open("./zhou.html","w",encoding="utf-8") as fp:fp.write(response)
方式二:
将参数以字典的形式传给params参数
import requests choice = input("请输入搜索条件>>>:").strip() params = {"wd":choice } # https://www.baidu.com/s?wd=周杰伦 url = "http://www.baidu.com/s?" # 带参数的get请求 response = requests.get(url,params) # 获取响应状态码 response.status_code
添加请求头信息
请求头以字典的方式传给headers参数
import requests choice = input("请输入搜索条件>>>:").strip() params = {"wd":choice } # https://www.baidu.com/s?wd=周杰伦 url = "http://www.baidu.com/s?" # 封装请求头信息 headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36' } # 带参数的get请求 response = requests.get(url,params,headers=headers) # 获取响应状态码 response.status_code
post请求
豆瓣登录
开发者抓包工具抓取post请求的登录信息
基于Ajax的get请求
### 抓取豆瓣影评### import json import requests # url = "https://movie.douban.com/j/search_subjects?type=movie&tag=%E7%83%AD%E9%97%A8&sort=recommend&page_limit=20&page_start=20" # 获取ajax的请求网址(基于ajax的get请求) url = 'https://movie.douban.com/j/search_subjects?' # 自定义请求头 headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36', } # 构建请求参数 params = {'type': 'movie','tag': '热门','sort': 'recommend','page_limit': '100', # 显示多少数据'page_start': '1', # 从第几页开始显示 } # 请求目标url response = requests.get(url=url,params=params,headers=headers) # 拿到响应数据,json格式的字符串 json_str = response.text # 对响应数据反序列化得到字典 code = json.loads(json_str) # 在字典中取出想要的数据 for dic in code["subjects"]:rate = dic["rate"]title = dic["title"]print(title,rate)
基于Ajax的post请求
### 抓取肯德基餐厅位置信息### import json import requests url = 'http://www.kfc.com.cn/kfccda/ashx/GetStoreList.ashx?op=keyword' data = {'cname': '','pid': '','keyword': '上海',# 查询城市'pageIndex':'1', # 显示第几页的数据'pageSize': '10', # 一页显示多少数据 } headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36' } response = requests.post(url=url,data=data,headers=headers) response.text
使用代理
import requests
# www.goubanjia.com
# 快代理
# 西祠代理
url = "http://www.baidu.com/s?wd=ip"
prox = {"http":"39.137.69.10:8080","http":"111.13.134.22:80",
}
# 参数proxies
response = requests.get(url=url,proxies=prox).text
with open("./daili.html","w",encoding="utf-8") as fp:fp.write(response)print("下载成功")
转载于:https://www.cnblogs.com/songzhixue/p/11080081.html
爬虫之requests库的使用相关推荐
- 煎蛋网妹子图爬虫(requests库实现)
煎蛋网妹子图爬虫(requests库实现) 文章目录 煎蛋网妹子图爬虫(requests库实现) 一.前言 环境配置 二.完整代码 一.前言 说到煎蛋网爬虫,相比很多人都写过,我这里试着用reques ...
- python爬虫基础-requests库
python爬虫基础-requests库 python爬虫 1.什么是爬虫? 通过编写程序,模拟浏览器上网,然后让其去互联网上抓取数据的过程. 注意:浏览器抓取的数据对应的页面是一个完整的页面. 为什 ...
- python的requests库的添加代理_python爬虫之requests库使用代理
python爬虫之requests库使用代理 发布时间:2020-03-25 17:00:54 来源:亿速云 阅读:110 作者:小新 今天小编分享的是关于python爬虫的requests库使用代理 ...
- 起点中文网爬虫实战requests库以及xpath的应用
起点中文网爬虫实战requests库以及xpath的应用 知识梳理: 本次爬虫是一次简单的复习应用,需要用到requests库以及xpath. 在开始爬虫之前,首先需要导入这两个库 import re ...
- Python网络爬虫之requests库Scrapy爬虫比较
requests库Scrapy爬虫比较 相同点: 都可以进行页面请求和爬取,Python爬虫的两个重要技术路线 两者可用性都好,文档丰富,入门简单. 两者都没有处理JS,提交表单,应对验证码等功能(可 ...
- python爬取图片的库_16-python爬虫之Requests库爬取海量图片
Requests 是一个 Python 的 HTTP 客户端库. Request支持HTTP连接保持和连接池,支持使用cookie保持会话,支持文件上传,支持自动响应内容的编码,支持国际化的URL和P ...
- python怎么安装requests库-Python爬虫入门requests库的安装与使用
Requests库的详细安装过程 对于初学Python爬虫小白,认识和使用requests库是第一步,requests库包含了网页爬取 的常用方法.下面开始安装requests库. 1.检查是否安装过 ...
- python爬虫百科-Python爬虫之requests库介绍(一)
虽然Python的标准库中 urllib2 模块已经包含了平常我们使用的大多数功能,但是它的 API 使用起来让人感觉不太好,而 Requests 自称 "HTTP for Humans&q ...
- python爬虫requests实战_Python爬虫之requests库网络爬取简单实战
实例1:直接爬取网页 实例2 : 构造headers,突破访问限制,模拟浏览器爬取网页 实例3 : 分析请求参数,构造请求参数爬取所需网页 实例4: 爬取图片 实例5: 分析请求参数,构造请求参数爬取 ...
- python爬虫requests库_python爬虫使用Requests库 - pytorch中文网
在入门教程中我们介绍了urllib库和urllib2的用法,同时我们了解一些爬虫的基础以及对爬虫有了基本的了解.其实在我们生产环境中,使用Request库更加方便与实用,同时我们这需要短短的几行代码就 ...
最新文章
- easyui日期处理(开始时间和结束时间)
- uniapp定义全局变量方法
- 【数字信号处理】线性常系数差分方程 ( 概念 | 线性常系数差分方程解法 )
- python二级多少分过_python二级操作题与分析(2)
- OpenCV中findContours函数的使用
- 荣耀V40屏幕素质得到“认证”:120Hz高刷屏没跑了
- redis mysql 集群_Redis(五)、Redis数据库集群相关
- 猫哥教你写爬虫 004--数据类型转换-小练习
- 最近和一个创业中的朋友喝茶聊天
- Informix onstat 常用的监控选项解释
- Android组件化项目详细实施方案
- 副业 | 程序员开启副业之路经验之谈!
- 宝塔面板 python管理器2.0安装Mrdoc
- leach算法的实现过程_LEACH-REC算法的研究及实现
- python 菜鸟联盟-菜鸟联盟python
- 混合动力系统的整车经济性开发与能量管理策略高级技术
- 获取高德地图位置的经纬度
- Highcharts - Bar Chart Column Chart
- 搜索引擎优化核心关键词策略
- 阳春三月,放飞希望---希望今年不再碌碌无为
热门文章
- 密码加密模块 bcrypt (详细,好理解,示例源码)
- Vue 强制刷新组件
- 【linux笔记】常用命令(3):文件相关
- LeetCode 121买卖股票的时机
- FFmpeg源代码简单分析:日志输出系统(av_log()等)
- LIRe 源代码分析 4:建立索引(DocumentBuilder)[以颜色布局为例]
- 2020年春季计算机网络考试,国家开放大学2020年春季学期电大考试《计算机网络》精选考试题及答案...
- 服务器跟域名解析失效,dns根域名解析失败有什么影响
- textarea文本框默认显示文本鼠标点击时清空
- 【图论】二分图学习笔记