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 装饰器使用详解
Jul 29 Python
Python调用C语言的方法【基于ctypes模块】
Jan 22 Python
python实现俄罗斯方块游戏
Mar 25 Python
pandas值替换方法
Jul 10 Python
Python面向对象之继承和组合用法实例分析
Aug 27 Python
Python实现Dijkstra算法
Oct 17 Python
从pandas一个单元格的字符串中提取字符串方式
Dec 17 Python
pytorch 实现删除tensor中的指定行列
Jan 13 Python
用python实现前向分词最大匹配算法的示例代码
Aug 06 Python
Pycharm编辑器功能之代码折叠效果的实现代码
Oct 15 Python
python中sys模块的介绍与实例
Apr 17 Python
Python开发之QT解决无边框界面拖动卡屏问题(附带源码)
May 27 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
服务器变量 $_SERVER 的深入解析
2013/07/02 PHP
PHP未登录自动跳转到登录页面
2016/12/21 PHP
PHP基于PDO调用sqlserver存储过程通用方法【基于Yii框架】
2017/10/07 PHP
关于IFRAME 自适应高度的研究
2006/07/20 Javascript
找到一点可怜的关于dojo资料,谢谢作者!
2006/12/06 Javascript
js DataSet数据源处理代码
2010/03/29 Javascript
jquery的$getjson调用并获取远程的JSON字符串问题
2012/12/10 Javascript
js字符串转换成数字与数字转换成字符串的实现方法
2014/01/08 Javascript
JavaScript实现从数组中选出和等于固定值的n个数
2014/09/03 Javascript
基于JavaScript制作霓虹灯文字 代码 特效
2015/09/01 Javascript
AngularJS基础 ng-options 指令详解
2016/08/02 Javascript
基于Vue 2.0的模块化前端 UI 组件库小结
2017/12/21 Javascript
vue-test-utils初使用详解
2019/05/23 Javascript
Vue-CLI与Vuex使用方法实例分析
2020/01/06 Javascript
vue-cli3项目打包后自动化部署到服务器的方法
2020/09/16 Javascript
js实现删除json中指定的元素
2020/09/22 Javascript
跟老齐学Python之玩转字符串(1)
2014/09/14 Python
python开发之基于thread线程搜索本地文件的方法
2015/11/11 Python
python对配置文件.ini进行增删改查操作的方法示例
2017/07/28 Python
浅谈Python中的作用域规则和闭包
2018/03/20 Python
Python将一个Excel拆分为多个Excel
2018/11/07 Python
python实时检测键盘输入函数的示例
2019/07/17 Python
python3.x提取中文的正则表达式示例代码
2019/07/23 Python
django的auth认证,authenticate和装饰器功能详解
2019/07/25 Python
python中的Elasticsearch操作汇总
2019/10/30 Python
CSS3 选择器 基本选择器介绍
2012/01/21 HTML / CSS
服务之星获奖感言
2014/01/21 职场文书
语文教学随笔感言
2014/02/18 职场文书
三八红旗手先进事迹材料
2014/05/13 职场文书
林肯就职演讲稿
2014/05/19 职场文书
淘宝店策划方案
2014/06/07 职场文书
护士找工作求职信
2014/07/02 职场文书
巾帼志愿者活动方案
2014/08/17 职场文书
环境工程专业毕业生求职信
2014/09/30 职场文书
2014年反洗钱工作总结
2014/11/22 职场文书
2014年电教工作总结
2014/12/19 职场文书