【爬虫基础】第6讲 opener的使用

在爬虫中,opener是一个用来发送HTTP请求的对象。它可以用来模拟浏览器发送请求,包括设置请求头、处理Cookie等操作。使用opener可以实现一些高级功能,如模拟登录、处理验证码等。

方法1:

from urllib.request import Request,build_opener
from fake_useragent import UserAgent

url ='http://httpbin.org/get'
headers ={
    'User-Agent':UserAgent().chrome
}
req = Request(url,headers=headers)
opener = build_opener()
resp = opener.open(req)
print(resp.read().decode())

执行结果:

方法2:使用控制器

from urllib.request import Request,build_opener
from fake_useragent import UserAgent
from urllib.request import HTTPHandler

url ='http://httpbin.org/get'
headers ={
    'User-Agent':UserAgent().chrome
}
req = Request(url,headers=headers)
handler = HTTPHandler(debuglevel=1)
opener = build_opener(handler)
resp = opener.open(req)
print(resp.read().decode())

执行结果:

对比方法1和方法2,方法2明显输出内容更多更详细。

需要注意的是,opener对象默认会自动处理重定向和Cookie等操作,所以无需手动处理。如果需要手动处理重定向,可以使用urllib.request.install_opener(opener)来安装opener对象。 

相关推荐

  1. Python爬虫教程6篇-使用session发起请求

    2024-03-29 03:20:03       21 阅读
  2. window.open使用

    2024-03-29 03:20:03       63 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-29 03:20:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-29 03:20:03       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-29 03:20:03       87 阅读
  4. Python语言-面向对象

    2024-03-29 03:20:03       96 阅读

热门阅读

  1. bash版本号怎么样能解决

    2024-03-29 03:20:03       44 阅读
  2. uniapp 安卓跳转到应用设置等页面

    2024-03-29 03:20:03       48 阅读
  3. 常见排序代码及手撕心得

    2024-03-29 03:20:03       40 阅读
  4. 独立服务器和云计算各有什么优势

    2024-03-29 03:20:03       30 阅读
  5. 测试学习1

    2024-03-29 03:20:03       43 阅读
  6. 15届蓝桥杯备赛(3)

    2024-03-29 03:20:03       40 阅读
  7. 如何在Tomcat 9上部署前端和后端项目

    2024-03-29 03:20:03       50 阅读
  8. 题目 2833: 金币

    2024-03-29 03:20:03       40 阅读
  9. go | map、multiple returnvalues、variadic function、recursion

    2024-03-29 03:20:03       48 阅读
  10. 什么是jQuery?

    2024-03-29 03:20:03       41 阅读
  11. 全球变暖(dfs和bfs)

    2024-03-29 03:20:03       40 阅读
  12. 数据结构与算法-分治算法

    2024-03-29 03:20:03       42 阅读