首页 > 解决方案 > 通过 python scrapy 包获取响应

问题描述

我对 Python 很陌生。我想在python中通过scrapy发送一个http请求并在一个变量中获取响应。我不知道如何捕捉响应文本。

from scrapy import Request
url = '***'

headers = {
    "authority": "***",
    "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36",
    "x-requested-with": "XMLHttpRequest",
    "authorization": "BasicAuthentication ***",
    "content-type": "application/json",
    "accept": "*/*",
    "origin": "***",
    "sec-fetch-site": "same-site",
    "sec-fetch-mode": "cors",
    "sec-fetch-dest": "empty",
    "referer": "***",
    "accept-language": "en-US,en;q=0.9,fa;q=0.8,tr;q=0.7"
}

body = '***'

request = Request(
    url=url,
    method='POST',
    dont_filter=True,
    headers=headers,
    body=body,
)

标签: pythonscrapypython-requests

解决方案


您需要创建一个蜘蛛项目或一个爬虫进程,以便scrapy 发出请求。Scrapy 将启动其他几个进程以执行请求,因此它似乎不是您需要的最佳选择。您可以在此处大致了解 scrapy 的工作原理。

如果您的意图只是在 python 代码中间发出请求并使用响应,我建议您使用requests 库

如果您想了解更多有关 scrapy 的信息,请从教程开始。


推荐阅读