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装饰器使用方法实例
Nov 21 Python
Python的Django框架中从url中捕捉文本的方法
Jul 20 Python
Python读大数据txt
Mar 28 Python
flask框架视图函数用法示例
Jul 19 Python
总结python中pass的作用
Feb 27 Python
windows下安装Python虚拟环境virtualenvwrapper-win
Jun 14 Python
Flask框架学习笔记之使用Flask实现表单开发详解
Aug 12 Python
Python序列化pickle模块使用详解
Mar 05 Python
Django中的session用法详解
Mar 09 Python
Python基于pyjnius库实现访问java类
Jul 31 Python
Selenium浏览器自动化如何上传文件
Apr 06 Python
Python中time标准库的使用教程
Apr 13 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控制用户的浏览器--ob*函数的使用说明
2007/03/16 PHP
smarty模板引擎从配置文件中获取数据的方法
2015/01/22 PHP
分享五个PHP7性能优化提升技巧
2015/12/07 PHP
WordPress中使主题支持小工具以及添加插件启用函数
2015/12/22 PHP
laravel学习笔记之模型事件的几种用法示例
2017/08/15 PHP
Laravel框架基于ajax实现二级联动功能示例
2019/01/17 PHP
jquery imgareaselect 使用利用js与程序结合实现图片剪切
2009/07/30 Javascript
jQuery中[attribute^=value]选择器用法实例
2014/12/31 Javascript
JS+CSS实现美化的下拉列表框效果
2015/08/11 Javascript
JS+CSS实现另类带提示效果的竖向导航菜单
2015/10/15 Javascript
学习javascript面向对象 理解javascript原型和原型链
2016/01/04 Javascript
JavaScript基础知识及常用方法总结
2016/01/10 Javascript
Javascript动画效果(3)
2016/10/11 Javascript
vue实现打印功能的两种方法
2018/09/07 Javascript
微信小程序表单验证插件WxValidate的二次封装功能(终极版)
2019/09/03 Javascript
layui 弹出层值回传解决方式
2019/11/14 Javascript
JS数组Reduce方法功能与用法实例详解
2020/04/29 Javascript
微信小程序实现简单购物车功能
2020/12/30 Javascript
python爬取NUS-WIDE数据库图片
2016/10/05 Python
纯python实现机器学习之kNN算法示例
2018/03/01 Python
Python3使用pandas模块读写excel操作示例
2018/07/03 Python
Python实现账号密码输错三次即锁定功能简单示例
2019/03/29 Python
Python函数和模块的使用总结
2019/05/20 Python
python中利用matplotlib读取灰度图的例子
2019/12/07 Python
Django设置Postgresql的操作
2020/05/14 Python
Python基于staticmethod装饰器标示静态方法
2020/10/17 Python
python语言实现贪吃蛇游戏
2020/11/13 Python
如何用H5实现一个触屏版的轮播器的实例
2017/01/09 HTML / CSS
Kappa英国官方在线商店:服装和运动器材
2020/11/22 全球购物
庆元旦活动总结
2014/07/09 职场文书
施工安全员岗位职责
2015/04/11 职场文书
2015年外贸业务员工作总结范文
2015/05/23 职场文书
高一数学教学反思
2016/02/18 职场文书
python调试工具Birdseye的使用教程
2021/05/25 Python
mysql查询结果实现多列拼接查询
2022/04/03 MySQL
Python各协议下socket黏包问题原理
2022/04/12 Python