需要Python 3.6+
一个简单的,由Qt-Webengine驱动的Web浏览器,具有用于测试scrapy蜘蛛代码的内置功能。
还包括一个插件,以使GUI可以与scrapy shell一起使用。
目录
您可以使用以下方式从PyPi导入软件包
点安装scrapy_gui
然后,您可以使用将其导入到Shell中import scrapy_gui
。
可以通过使用scrapy_gui.open_browser()
python shell 打开标准用户界面。它由一个Web浏览器和一组分析其内容的工具组成。
在搜索栏中输入任何网址,然后按回车键或按“开始”按钮。加载动画完成后,即可在“工具”选项卡中进行解析。
工具标签包含用于分析页面内容的各个部分。此选项卡的目的是使测试查询和代码变得容易,以供在Scrapy Spider中使用。
注意:这将使用初始 html响应。如果以后有其他请求,JavaScript等更改了页面,则不会考虑到该问题。
它将使用该requests
程序包向初始html加载附加请求。运行查询时,它将使用Selection
parsel包创建一个选择器对象。
通过查询框,您可以使用Parsel兼容的CSS和XPath查询从页面中提取数据。
它返回结果就像selection.css/xpath(‘YOUR QUERY‘).getall()
被调用一样。
如果没有结果或查询中有错误,将弹出一个对话框,通知您该问题。
此框使您可以添加除先前的CSS查询之外的正则表达式模式。
它返回结果就像selection.css/xpath(‘YOUR QUERY‘).re(r‘YOUR REGEX‘)‘
被调用一样。这意味着,如果使用组,它将仅返回括号内的内容。
此框可让您定义可以在查询和正则表达式的结果上运行的其他python代码。该代码可以任意长度和复杂,包括添加其他功能,类,导入等。
唯一的要求是,您必须包括一个user_fun(results, selector)
返回a 的函数list
。
该表将列出通过正则表达式和函数(如果已定义)传递的所有结果。
此选项卡包含在“工具”选项卡中使用的html源。您可以使用文本框搜索特定内容。所有搜索都不区分大小写。
这只是一个纯文本框。退出应用程序时,此处的内容不会保存。
可以将此工具与刮板外壳集成在一起。这将使您可以将其用于通过中间件传递的响应,访问更复杂的请求和更特定的选择器。
要在您的外壳中使用它,请使用以下命令导入load_selector方法:
from scrapy_gui import load_selector
然后,您可以编写load_selector(YOUR_SELECTOR)来打开一个将选择器加载到其中的窗口。
例如,
load_selector(response)
将您的响应加载到UI中。
当您运行的代码命名的窗口Scrapy GUI
将打开包含Tools
,Source
以及Notes
上面提到的从独立窗口选项卡。
原文:https://www.cnblogs.com/aotumandaren/p/13668416.html