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 布尔操作实现代码
Mar 23 Python
Python在图片中添加文字的两种方法
Apr 29 Python
Python模拟登陆实现代码
Jun 14 Python
Python根据欧拉角求旋转矩阵的实例
Jan 28 Python
几个适合python初学者的简单小程序,看完受益匪浅!(推荐)
Apr 16 Python
Pandas之groupby( )用法笔记小结
Jul 23 Python
Python3 Click模块的使用方法详解
Feb 12 Python
python GUI库图形界面开发之PyQt5中QWebEngineView内嵌网页与Python的数据交互传参详细方法实例
Feb 26 Python
Python中logger日志模块详解
Aug 04 Python
python/golang 删除链表中的元素
Sep 14 Python
PyCharm配置KBEngine快速处理代码提示冲突、配置命令问题
Apr 03 Python
Python中使用Opencv开发停车位计数器功能
Apr 04 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
在apache下限制每个虚拟主机的并发数!!!!
2006/10/09 PHP
php运行出现Call to undefined function curl_init()的解决方法
2010/11/02 PHP
解析MySql与Java的时间类型
2013/06/22 PHP
PHP addslashes()函数讲解
2019/02/03 PHP
phpstudy隐藏index.php的方法
2020/09/21 PHP
JS随即打乱数组实现代码
2012/12/03 Javascript
在javascript中关于节点内容加强
2013/04/11 Javascript
jQuery之过滤元素操作小结
2013/11/30 Javascript
JS替换文本域内的回车示例
2014/02/18 Javascript
javascript实现日期按月份加减
2015/05/15 Javascript
JavaScript面对国际化编程时的一些建议
2015/06/24 Javascript
原生JavaScript实现滚动条效果
2020/03/24 Javascript
在Docker快速部署Node.js应用的详细步骤
2016/09/02 Javascript
ion content 滚动到底部会遮住一部分视图的快速解决方法
2016/09/06 Javascript
详解Vue2.0配置mint-ui踩过的那些坑
2018/04/23 Javascript
使用Vue.observable()进行状态管理的实例代码详解
2019/05/26 Javascript
vue使用codemirror的两种用法
2019/08/27 Javascript
JavaScript JSON使用原理及注意事项
2020/07/30 Javascript
vue+node 实现视频在线播放的实例代码
2020/10/19 Javascript
python实现批量获取指定文件夹下的所有文件的厂商信息
2014/09/28 Python
利用Python中unittest实现简单的单元测试实例详解
2017/01/09 Python
Win7下Python与Tensorflow-CPU版开发环境的安装与配置过程
2018/01/04 Python
Python面向对象之类和对象属性的增删改查操作示例
2018/12/14 Python
解决Jupyter Notebook开始菜单栏Anaconda下消失的问题
2020/04/13 Python
django 模型中的计算字段实例
2020/05/19 Python
Python爬虫定时计划任务的几种常见方法(推荐)
2021/01/15 Python
Fairyseason:为个人和批发商提供女装和配件
2017/03/01 全球购物
大码女装:Ulla Popken
2019/08/06 全球购物
员工安全生产承诺书
2014/05/22 职场文书
搞笑的爱情检讨书
2014/10/01 职场文书
2014年财务科工作总结
2014/11/11 职场文书
学生会辞职信
2015/03/02 职场文书
运动会开幕式致辞
2015/07/29 职场文书
员工升职自我评价
2019/03/26 职场文书
感谢信
2019/04/11 职场文书
Python OpenCV超详细讲解调整大小与图像操作的实现
2022/04/02 Python