我做了scrapy tut后,我正在研究我的第一只蜘蛛:
class My_Spider(scrapy.Spider):
name = "My_Spider"
def start_requests(self):
for i in range(1):
yield Request('my_url', method="post", headers= headers, body=payload, callback=self.parse_method)
def parse_method(self,response):
print(response.body)
有没有办法在浏览器窗口标签或ipython笔记本中打开响应正文?
答案 0 :(得分:7)
是的,Scrapy实用程序函数内置了open_in_browser()
:
from scrapy.utils.response import open_in_browser
open_in_browser(response)
答案 1 :(得分:0)
您可以使用Open in browser
文档中的示例:
from scrapy.utils.response import open_in_browser
def parse_details(self, response):
if "item name" not in response.body:
open_in_browser(response)
对于您的问题,它就像:
from scrapy.utils.response import open_in_browser
open_in_browser(response)
此外,我们可以看到网页使用scrapy shell
。
例如:
scrapy shell https://stackoverflow.com/questions/37465387/open-scrapy-output-in-browser-tab-or-ipython-window
,然后在浏览器中查看响应
view(response)
答案 2 :(得分:0)
在特定浏览器中打开响应对象
import webbrowser
from scrapy.utils.response import open_in_browser
open_in_browser(response, _openfunc=webbrowser.get('/path/to/browser/exe').open)