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删除空文件和空文件夹的方法
Jul 14 Python
使用Python简单的实现树莓派的WEB控制
Feb 18 Python
Python实现的径向基(RBF)神经网络示例
Feb 06 Python
numpy中的delete删除数组整行和整列的实例
May 09 Python
Flask框架信号用法实例分析
Jul 24 Python
破解安装Pycharm的方法
Oct 19 Python
Python函数中不定长参数的写法
Feb 13 Python
python3中rank函数的用法
Nov 27 Python
Python爬虫HTPP请求方法有哪些
Jun 03 Python
解决django migrate报错ORA-02000: missing ALWAYS keyword
Jul 02 Python
使用py-spy解决scrapy卡死的问题方法
Sep 29 Python
Python中文分词库jieba(结巴分词)详细使用介绍
Apr 07 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
php输出金字塔的2种实现方法
2014/12/16 PHP
PHP new static 和 new self详解
2017/02/19 PHP
使用一个for循环将N*N的二维数组的所有值置1实现方法
2017/05/29 PHP
innerText和innerHTML 一些问题分析
2009/05/18 Javascript
JS OOP包机制,类创建的方法定义
2009/11/02 Javascript
js 创建快捷方式的代码(fso)
2010/11/19 Javascript
浏览器解析js生成的html出现样式问题的解决方法
2012/04/16 Javascript
ExtJs中gridpanel分组后组名排序实例代码
2013/12/02 Javascript
jQuery选择器源码解读(八):addCombinator函数
2015/03/31 Javascript
JQuery给网页更换皮肤的方法
2015/05/30 Javascript
JS+CSS实现电子商务网站导航模板效果代码
2015/09/10 Javascript
JS实现选项卡实例详解
2015/11/17 Javascript
Bootstrap导航简单实现代码
2017/03/06 Javascript
微信小程序 request接口的封装实例代码
2017/04/26 Javascript
JavaScript通过mouseover()实现图片变大效果的示例
2017/12/20 Javascript
小程序分享模块超级详解(推荐)
2019/04/10 Javascript
微信小程序分包加载代码实现方法详解
2019/09/23 Javascript
Vue如何将页面导出成PDF文件
2020/08/17 Javascript
[02:56]DOTA2英雄基础教程 巨魔战将
2013/12/10 DOTA
Python 开发Activex组件方法
2009/11/08 Python
python开发之字符串string操作方法实例详解
2015/11/12 Python
Python实现查找二叉搜索树第k大的节点功能示例
2019/01/24 Python
Python实现多态、协议和鸭子类型的代码详解
2019/05/05 Python
使用Python刷淘宝喵币(低阶入门版)
2019/10/30 Python
MNIST数据集转化为二维图片的实现示例
2020/01/10 Python
浅谈CSS3特性查询(Feature Query: @supports)功能简介
2017/07/31 HTML / CSS
大学生的网络创业计划书
2013/12/26 职场文书
回门宴答谢词
2014/01/13 职场文书
给客户的道歉信
2014/01/13 职场文书
学校师德承诺书
2014/05/23 职场文书
拓展训练激励口号
2014/06/17 职场文书
信访维稳工作汇报
2014/10/27 职场文书
五一晚会主持词
2015/07/01 职场文书
python实现自定义日志的具体方法
2021/05/28 Python
JAVA springCloud项目搭建流程
2022/05/11 Java/Android
python中pd.cut()与pd.qcut()的对比及示例
2022/06/16 Python