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实现多线程抓取网页功能实例详解
Jun 08 Python
Python及Django框架生成二维码的方法分析
Jan 31 Python
python中如何使用分步式进程计算详解
Mar 22 Python
python根据时间获取周数代码实例
Sep 30 Python
利用python读取YUV文件 转RGB 8bit/10bit通用
Dec 09 Python
jupyter notebook 参数传递给shell命令行实例
Apr 10 Python
Python用5行代码实现批量抠图的示例代码
Apr 14 Python
解决windows上安装tensorflow时报错,“DLL load failed: 找不到指定的模块”的问题
May 20 Python
keras.utils.to_categorical和one hot格式解析
Jul 02 Python
opencv+pyQt5实现图片阈值编辑器/寻色块阈值利器
Nov 13 Python
python time.strptime格式化实例详解
Feb 03 Python
Python中常见的导入方式总结
May 06 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
Laravel 5 框架入门(二)构建 Pages 的管理功能
2015/04/09 PHP
php原生数据库分页的代码实例
2019/02/18 PHP
PHP示例演示发送邮件给某个邮箱
2019/04/03 PHP
Mootools 1.2教程 滚动条(Slider)
2009/09/15 Javascript
JavaScript弹簧振子超简洁版 完全符合能量守恒,胡克定理
2009/10/25 Javascript
jquery实用代码片段集合
2010/08/12 Javascript
jQuery 源码分析笔记(7) Queue
2011/06/19 Javascript
Js+Flash实现访问剪切板操作
2012/11/20 Javascript
JS 页面计时器示例代码
2013/10/28 Javascript
举例讲解JavaScript substring()的使用方法
2015/11/09 Javascript
基于javascript实现简单计算器功能
2016/01/03 Javascript
Bootstrap表单组件教程详解
2016/04/26 Javascript
AngularJS中的包含详细介绍及实现示例
2016/07/28 Javascript
JavaScript实现二叉树定义、遍历及查找的方法详解
2017/12/20 Javascript
JS实现验证码倒计时的注册页面
2018/01/02 Javascript
vue中本地静态图片路径写法
2018/03/06 Javascript
使用Sonarqube扫描Javascript代码的示例
2018/12/26 Javascript
Vue动态修改网页标题的方法及遇到问题
2019/06/09 Javascript
Python三级菜单的实例
2017/09/13 Python
python ChainMap的使用和说明详解
2019/06/11 Python
利用Python实现Shp格式向GeoJSON的转换方法
2019/07/09 Python
python字典的setdefault的巧妙用法
2019/08/07 Python
Python Django 命名空间模式的实现
2019/08/09 Python
python定位xpath 节点位置的方法
2019/08/27 Python
Python3开发环境搭建详细教程
2020/06/18 Python
Python request post上传文件常见要点
2020/11/20 Python
python爬虫scrapy基本使用超详细教程
2021/02/20 Python
魔幻般冒泡背景的CSS3按钮动画
2016/02/27 HTML / CSS
原装进口全世界:天猫国际
2016/08/03 全球购物
Nuts.com:优质散装,批发坚果、干果和巧克力等
2017/03/21 全球购物
6PM官网:折扣鞋、服装及配饰
2018/08/03 全球购物
医院后勤自我鉴定
2013/10/13 职场文书
促销活动策划方案
2014/01/12 职场文书
音乐器材管理制度
2014/01/31 职场文书
销售工作决心书
2015/02/04 职场文书
大连导游词
2015/02/12 职场文书