python爬虫基础教程:requests库(二)代码实例


Posted in Python onApril 09, 2019

get请求

简单使用

import requests
'''
想要学习Python?Python学习交流群:973783996满足你的需求,资料都已经上传群文件,可以自行下载!
'''
response = requests.get("https://www.baidu.com/")
#text返回的是unicode的字符串,可能会出现乱码情况
# print(response.text)
 
#content返回的是字节,需要解码
print(response.content.decode('utf-8'))
 
 
# print(response.url)       #https://www.baidu.com/
# print(response.status_code)   #200
# print(response.encoding)    #ISO-8859-1

添加headers和params

import requests
 
params = {
  'wd':'python'
}
headers = {
  'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36'
}
 
response = requests.get("https://www.baidu.com/s",params=params,headers=headers)
 
#content返回的是字节,需要解码
with open('baidu.html','w',encoding='utf-8') as f:
  f.write(response.content.decode('utf-8'))

POST请求

爬去拉钩网职位信息

import requests
 
url = "https://www.lagou.com/jobs/positionAjax.json?city=%E5%8C%97%E4%BA%AC&needAddtionalResult=false"
 
data = {
  'first':'true',
  'pn':1,
  'kd':'python'
}
 
headers = {
  "User-Agent":"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36",
  "Referer":"https://www.lagou.com/jobs/list_python?city=%E5%8C%97%E4%BA%AC&cl=false&fromSearch=true&labelWords=&suginput="
}
 
response = requests.post(url,data=data,headers=headers)
# print(response.text)
print(type(response.text))    #<class 'str'>
print(type(response.json()))   #<class 'dict'>
 
print(response.json())      #获取为字典的形式

使用代理

import requests
 
proxy = {'http':'115.210.31.236.55:9000'}
 
response = requests.get("https://www.baidu.com/",proxies=proxy)
 
print(response.content.decode('utf-8'))

session登录

# _*_ coding:utf-8 _*_
 
import requests
 
# 1. 创建session对象,可以保存Cookie值
ssion = requests.session()
 
# 2. 处理 headers
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36'}
 
# 3. 需要登录的用户名和密码
data = {"email":"158xxxxxxxx", "password":"pythonxxxxxxx"}
 
# 4. 发送附带用户名和密码的请求,并获取登录后的Cookie值,保存在ssion里
ssion.post("http://www.renren.com/PLogin.do", data = data)
 
# 5. ssion包含用户登录后的Cookie值,可以直接访问那些登录后才可以访问的页面
response = ssion.get("http://zhibo.renren.com/news/108")
 
# 6. 打印响应内容
print(response.text)
 

以上所述是小编给大家介绍的python爬虫基础教程:requests库(二)详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python获取远程文件大小的函数代码分享
May 13 Python
python正常时间和unix时间戳相互转换的方法
Apr 23 Python
python中获得当前目录和上级目录的实现方法
Oct 12 Python
Win7 64位下python3.6.5安装配置图文教程
Oct 27 Python
python爬虫_实现校园网自动重连脚本的教程
Apr 22 Python
python 读取文件并把矩阵转成numpy的两种方法
Feb 12 Python
值得收藏的10道python 面试题
Apr 15 Python
python 计算概率密度、累计分布、逆函数的例子
Feb 25 Python
Python基于xlutils修改表格内容过程解析
Jul 28 Python
Expected conditions模块使用方法汇总代码解析
Aug 13 Python
python如何控制进程或者线程的个数
Oct 16 Python
python 利用PyAutoGUI快速构建自动化操作脚本
May 31 Python
一个可以套路别人的python小程序实例代码
Apr 09 #Python
Python装饰器限制函数运行时间超时则退出执行
Apr 09 #Python
详解Python 解压缩文件
Apr 09 #Python
Python使用pandas和xlsxwriter读写xlsx文件的方法示例
Apr 09 #Python
Python中使用logging和traceback模块记录日志和跟踪异常
Apr 09 #Python
由Python编写的MySQL管理工具代码实例
Apr 09 #Python
python实现爬山算法的思路详解
Apr 09 #Python
You might like
火车采集器 免费版使出收费版本功能实现原理
2009/09/17 PHP
PHP面向对象概念
2011/11/06 PHP
thinkphp模板继承实例简述
2014/11/26 PHP
ThinkPHP中session函数详解
2016/09/14 PHP
PHP实现将几张照片拼接到一起的合成图片功能【便于整体打印输出】
2017/11/14 PHP
用ASP将SQL搜索出来的内容导出为TXT的代码
2007/07/27 Javascript
js 函数的执行环境和作用域链的深入解析
2009/11/01 Javascript
Jquery拖拽并简单保存的实现代码
2010/11/28 Javascript
js读写(删除)Cookie实例详解
2013/04/17 Javascript
Javascript堆排序算法详解
2014/12/03 Javascript
JavaScript删除数组元素的方法
2015/03/20 Javascript
常用javascript表单验证汇总
2020/07/20 Javascript
Vue方法与事件处理器详解
2016/12/01 Javascript
实例解析js中try、catch、finally的执行规则
2017/02/24 Javascript
深入理解Webpack 中路径的配置
2017/06/17 Javascript
Vue2.0学习之详解Vue 组件及父子组件通信
2017/12/12 Javascript
vue 不使用select实现下拉框功能(推荐)
2018/05/17 Javascript
详解如何为你的angular app构建一个第三方库
2018/12/07 Javascript
微信小程序保存多张图片的实现方法
2019/03/05 Javascript
Vue2.x通用条件搜索组件的封装及应用详解
2019/05/28 Javascript
JavaScript实现身份证验证代码实例
2019/08/26 Javascript
JS常见面试试题总结【去重、遍历、闭包、继承等】
2019/08/27 Javascript
卸载vue2.0并升级vue_cli3.0的实例讲解
2020/02/16 Javascript
python实现DNS正向查询、反向查询的例子
2014/04/25 Python
不同版本中Python matplotlib.pyplot.draw()界面绘制异常问题的解决
2017/09/24 Python
Python实现的KMeans聚类算法实例分析
2018/12/29 Python
Numpy将二维数组添加到空数组的实现
2019/12/05 Python
Python新手学习函数默认参数设置
2020/06/03 Python
在网上学习全世界最好的课程:Coursera
2017/11/07 全球购物
澳大利亚在线家具、灯饰和家居装饰店:LivingStyles
2018/11/20 全球购物
幼儿园教育教学反思
2014/01/31 职场文书
政府绩效管理实施方案
2014/05/04 职场文书
产品售后服务承诺书
2014/05/21 职场文书
2014年公路养护工作总结
2014/12/04 职场文书
宫崎骏十大动画电影,宫崎骏好看的动画电影排名
2022/03/22 日漫
python数字图像处理实现图像的形变与缩放
2022/06/28 Python