美文网首页Python爬虫系列
用Python 的 opener 来自定义我们的请求内容

用Python 的 opener 来自定义我们的请求内容

作者: 我爱学python | 来源:发表于2019-08-01 15:57 被阅读20次

    具体步骤:

    使用相关的Handler处理器来创建特定功能的处理器对象;

    然后通过build_opener()方法使用这些处理器对象,创建自定义opener对象;

    使用自定义的opener对象,调用open()方法发送请求。

    我们先来回顾一下使用 urlopen 获取百度首页的 html 代码实例:

    接下来我们看一下使用 opener 的处理方式:

    在上面的第一段代码中,我们是通过直接import urllib.request 来导入我们需要的包,这样当我们要使用时需要urllib.request 来使用,第二段代码我们是通过from urllib import request来导入我们需要的包,这样当我们使用时直接request来使用就可以了。

    第一段代码在前面的文章中我们已经说过了,这里就不多做解释了。

    第二段代码中,我们使用了 opener 的方法来处理我们的请求,这样我们就可以对代理,cookie 等做进一步的操作,后续文章会讲到。最终结果如下:

    在http_handler = request.HTTPHandler()中,我们还可以添加一个debuglevel=1参数,会将 Debug Log 打开,这样程序在执行的时候,会把收包和发包的报头在屏幕上自动打印出来,方便调试,有时可以省去抓包的工作。

    代码如下:

    输出结果如下:

    可以看出在响应结果的时候会为我们打印输出一些请求信息。

    相关文章

      网友评论

        本文标题:用Python 的 opener 来自定义我们的请求内容

        本文链接:https://www.haomeiwen.com/subject/glqcdctx.html