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库的使用相关推荐

  1. 煎蛋网妹子图爬虫(requests库实现)

    煎蛋网妹子图爬虫(requests库实现) 文章目录 煎蛋网妹子图爬虫(requests库实现) 一.前言 环境配置 二.完整代码 一.前言 说到煎蛋网爬虫,相比很多人都写过,我这里试着用reques ...

  2. python爬虫基础-requests库

    python爬虫基础-requests库 python爬虫 1.什么是爬虫? 通过编写程序,模拟浏览器上网,然后让其去互联网上抓取数据的过程. 注意:浏览器抓取的数据对应的页面是一个完整的页面. 为什 ...

  3. python的requests库的添加代理_python爬虫之requests库使用代理

    python爬虫之requests库使用代理 发布时间:2020-03-25 17:00:54 来源:亿速云 阅读:110 作者:小新 今天小编分享的是关于python爬虫的requests库使用代理 ...

  4. 起点中文网爬虫实战requests库以及xpath的应用

    起点中文网爬虫实战requests库以及xpath的应用 知识梳理: 本次爬虫是一次简单的复习应用,需要用到requests库以及xpath. 在开始爬虫之前,首先需要导入这两个库 import re ...

  5. Python网络爬虫之requests库Scrapy爬虫比较

    requests库Scrapy爬虫比较 相同点: 都可以进行页面请求和爬取,Python爬虫的两个重要技术路线 两者可用性都好,文档丰富,入门简单. 两者都没有处理JS,提交表单,应对验证码等功能(可 ...

  6. python爬取图片的库_16-python爬虫之Requests库爬取海量图片

    Requests 是一个 Python 的 HTTP 客户端库. Request支持HTTP连接保持和连接池,支持使用cookie保持会话,支持文件上传,支持自动响应内容的编码,支持国际化的URL和P ...

  7. python怎么安装requests库-Python爬虫入门requests库的安装与使用

    Requests库的详细安装过程 对于初学Python爬虫小白,认识和使用requests库是第一步,requests库包含了网页爬取 的常用方法.下面开始安装requests库. 1.检查是否安装过 ...

  8. python爬虫百科-Python爬虫之requests库介绍(一)

    虽然Python的标准库中 urllib2 模块已经包含了平常我们使用的大多数功能,但是它的 API 使用起来让人感觉不太好,而 Requests 自称 "HTTP for Humans&q ...

  9. python爬虫requests实战_Python爬虫之requests库网络爬取简单实战

    实例1:直接爬取网页 实例2 : 构造headers,突破访问限制,模拟浏览器爬取网页 实例3 : 分析请求参数,构造请求参数爬取所需网页 实例4: 爬取图片 实例5: 分析请求参数,构造请求参数爬取 ...

  10. python爬虫requests库_python爬虫使用Requests库 - pytorch中文网

    在入门教程中我们介绍了urllib库和urllib2的用法,同时我们了解一些爬虫的基础以及对爬虫有了基本的了解.其实在我们生产环境中,使用Request库更加方便与实用,同时我们这需要短短的几行代码就 ...

最新文章

  1. easyui日期处理(开始时间和结束时间)
  2. uniapp定义全局变量方法
  3. 【数字信号处理】线性常系数差分方程 ( 概念 | 线性常系数差分方程解法 )
  4. python二级多少分过_python二级操作题与分析(2)
  5. OpenCV中findContours函数的使用
  6. 荣耀V40屏幕素质得到“认证”:120Hz高刷屏没跑了
  7. redis mysql 集群_Redis(五)、Redis数据库集群相关
  8. 猫哥教你写爬虫 004--数据类型转换-小练习
  9. 最近和一个创业中的朋友喝茶聊天
  10. Informix onstat 常用的监控选项解释
  11. Android组件化项目详细实施方案
  12. 副业 | 程序员开启副业之路经验之谈!
  13. 宝塔面板 python管理器2.0安装Mrdoc
  14. leach算法的实现过程_LEACH-REC算法的研究及实现
  15. python 菜鸟联盟-菜鸟联盟python
  16. 混合动力系统的整车经济性开发与能量管理策略高级技术
  17. 获取高德地图位置的经纬度
  18. Highcharts - Bar Chart Column Chart
  19. 搜索引擎优化核心关键词策略
  20. 阳春三月,放飞希望---希望今年不再碌碌无为

热门文章

  1. 密码加密模块 bcrypt (详细,好理解,示例源码)
  2. Vue 强制刷新组件
  3. 【linux笔记】常用命令(3):文件相关
  4. LeetCode 121买卖股票的时机
  5. FFmpeg源代码简单分析:日志输出系统(av_log()等)
  6. LIRe 源代码分析 4:建立索引(DocumentBuilder)[以颜色布局为例]
  7. 2020年春季计算机网络考试,国家开放大学2020年春季学期电大考试《计算机网络》精选考试题及答案...
  8. 服务器跟域名解析失效,dns根域名解析失败有什么影响
  9. textarea文本框默认显示文本鼠标点击时清空
  10. 【图论】二分图学习笔记