Python requests获取网页常用方法解析


Posted in Python onFebruary 20, 2020

这篇文章主要介绍了Python requests获取网页常用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

主要记录使用 requests 模块获取网页源码的方法

class Crawler(object):
 """
 采集类
 """
 def __init__(self, base_url):
  self._base_url = base_url
  self._cookie = None
  self._getCookie()

 def _getCookie(self):
  """
  获取站点cookie
  :return:
  """
  try:
   res = requests.get(self._base_url)
   res.raise_for_status()
   # TODO response.cookies获取到的是一个cookiejar对象,需要使用requests.utils.dict_from_cookiejar来
   # TODO 将cookiejar对象转换为一个字典,这个字典后续使用的时候,在请求时直接传入就可以了,
   # 如 requests.get(url, cookies=cookies)
   self._cookie = requests.utils.dict_from_cookiejar(res.cookies)
   print self._cookie
  except Exception as e:
   print e

 def get_html_text(self, url, **kwargs):
  """
  爬取网页的通用代码框架
  :param url:
  :param method:
  :param kwargs:
  :return:
  """
  try:
   kwargs.setdefault('cookies', self._cookie)
   res = requests.get(url, **kwargs)
   # TODO 若响应状态码不是200, 抛出 HTTPError 异常
   res.raise_for_status()
   res.encoding = res.apparent_encoding
   # print requests.utils.dict_from_cookiejar(res.cookies)
   return res.text
  except Exception as e:
   print traceback.print_exc()
   return

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现通过shelve修改对象实例
Sep 26 Python
Python中使用Flask、MongoDB搭建简易图片服务器
Feb 04 Python
Python 类的继承实例详解
Mar 25 Python
Python+Socket实现基于TCP协议的客户与服务端中文自动回复聊天功能示例
Aug 31 Python
浅谈Pandas:Series和DataFrame间的算术元素
Dec 22 Python
python tkinter窗口最大化的实现
Jul 15 Python
使用Python自动生成HTML的方法示例
Aug 06 Python
Python超越函数积分运算以及绘图实现代码
Nov 20 Python
基于Python实现扑克牌面试题
Dec 11 Python
python烟花效果的代码实例
Feb 25 Python
python 8种必备的gui库
Aug 27 Python
python 下划线的多种应用场景总结
May 12 Python
pytorch实现保证每次运行使用的随机数都相同
Feb 20 #Python
Python argparse模块使用方法解析
Feb 20 #Python
浅谈pytorch torch.backends.cudnn设置作用
Feb 20 #Python
Python sqlite3查询操作过程解析
Feb 20 #Python
python利用datetime模块计算程序运行时间问题
Feb 20 #Python
pytorch数据预处理错误的解决
Feb 20 #Python
Python异常继承关系和自定义异常实现代码实例
Feb 20 #Python
You might like
php中使用session_set_save_handler()函数把session保存到MySQL数据库实例
2014/11/06 PHP
php使用GD库创建图片缩略图的方法
2015/06/10 PHP
Yii控制器中filter过滤器用法分析
2016/07/15 PHP
Yii2 中实现单点登录的方法
2018/03/09 PHP
PHP使Laravel为JSON REST API返回自定义错误的问题
2018/10/16 PHP
redis+php实现微博(二)发布与关注功能详解
2019/09/23 PHP
许愿墙中用到的函数
2006/10/07 Javascript
二行代码解决全部网页木马
2008/03/28 Javascript
新手常遇到的一些jquery问题整理
2010/08/16 Javascript
javascript中this做事件参数相关问题解答
2013/03/17 Javascript
node.js中的fs.createWriteStream方法使用说明
2014/12/17 Javascript
jquery实现可自动判断位置的弹出层效果代码
2015/10/12 Javascript
jQuery遍历DOM元素与节点方法详解
2016/04/14 Javascript
JQuery validate插件Remote用法大全
2016/05/15 Javascript
基于Node.js的JavaScript项目构建工具gulp的使用教程
2016/05/20 Javascript
Knockoutjs 学习系列(二)花式捆绑
2016/06/07 Javascript
利用HTML5+Socket.io实现摇一摇控制PC端歌曲切换
2017/01/13 Javascript
基于vue.js的分页插件详解
2017/11/27 Javascript
vue+element-ui集成随机验证码+用户名+密码的form表单验证功能
2018/08/05 Javascript
用node开发并发布一个cli工具的方法步骤
2019/01/03 Javascript
一文搞懂ES6中的Map和Set
2019/05/20 Javascript
vue实现简单学生信息管理
2020/05/30 Javascript
js实现双色球效果
2020/08/02 Javascript
python批量修改文件名的实现代码
2014/09/01 Python
详解Python中的元组与逻辑运算符
2015/10/13 Python
python使用Matplotlib绘制分段函数
2018/09/25 Python
对python函数签名的方法详解
2019/01/22 Python
Pandas DataFrame中的tuple元素遍历的实现
2019/10/23 Python
python可视化分析的实现(matplotlib、seaborn、ggplot2)
2021/02/03 Python
应届毕业生专业个人求职自荐信格式
2013/11/20 职场文书
服装设计专业自荐信
2014/06/17 职场文书
运动会广播稿200字(10篇)
2014/10/12 职场文书
只需要这一行代码就能让python计算速度提高十倍
2021/05/24 Python
Golang 切片(Slice)实现增删改查
2022/04/22 Golang
mysql 体系结构和存储引擎介绍
2022/05/06 MySQL
kubernetes集群搭建Zabbix监控平台的详细过程
2022/07/07 Servers