Python使用scrapy采集时伪装成HTTP/1.1的方法

yipeiwu_com6年前Python基础

本文实例讲述了Python使用scrapy采集时伪装成HTTP/1.1的方法。分享给大家供大家参考。具体如下:

添加下面的代码到 settings.py 文件

复制代码 代码如下:
DOWNLOADER_HTTPCLIENTFACTORY = 'myproject.downloader.HTTPClientFactory'

保存以下代码到单独的.py文件
复制代码 代码如下:
from scrapy.core.downloader.webclient import ScrapyHTTPClientFactory, ScrapyHTTPPageGetter
class PageGetter(ScrapyHTTPPageGetter):
    def sendCommand(self, command, path):
        self.transport.write('%s %s HTTP/1.1\r\n' % (command, path))
class HTTPClientFactory(ScrapyHTTPClientFactory):
     protocol = PageGetter

希望本文所述对大家的Python程序设计有所帮助。

相关文章

python中遍历文件的3个方法

今天写一个在windows下批量修改文件名的python脚本,用到文件的遍历。用python进行文件遍历有多种方法,这里列举并说明一下。 os.path.walk() 这是一个传统的用法...

PyQt弹出式对话框的常用方法及标准按钮类型

PyQt弹出式对话框的常用方法及标准按钮类型

PyQt之弹出式对话框(QMessageBox)的常用方法及标准按钮类型 一、控件说明 QMessageBox是一种通用的弹出式对话框,用于显示消息,允许用户通过单击不同的标准按钮对消息...

python动态性强类型用法实例

本文实例分析了python动态性强类型用法。分享给大家供大家参考。具体如下: Python变量声明和定义 与C#不同,Python在使用变量之前无须定义它的类型,试着运行下面的例子:...

解密Python中的描述符(descriptor)

Python中包含了许多内建的语言特性,它们使得代码简洁且易于理解。这些特性包括列表/集合/字典推导式,属性(property)、以及装饰器(decorator)。对于大部分特性来说,这...

kali中python版本的切换方法

kali中python版本的切换方法

如下所示: update-alternatives --config python 一条简单的命令,如下图所示: 以上这篇kali中python版本的切换方法就是小编分享给大家的...