问题标签 [scrapy-shell]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
92 浏览

python - 如何通过xpath从scrapy的源代码中提取部分?

我正在尝试从某个部分的网站源代码中提取文本。

我试图提取的网站的源代码如下所示:

我已经尝试通过 response.css 和 response.xpath 尝试通过 scrapy shell 从源代码中获取数据,但没有运气。

我想只提取数据创建日期,所以它看起来像

0 投票
2 回答
37 浏览

python - scrapy 无法关注完整链接

但是我得到

2019-02-19 14:16:35 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023 2019-02-19 14:16:35 [scrapy.core.engine] INFO: Spider opened 2019-02-19 14:16:35 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.winemag.com/robots.txt> (referer: None) 2019-02-19 14:16:35 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to <GET http://www.winemag.com/wine-ratings> from <GET https://www.winemag.com/wine-ratings/2/> 2019-02-19 14:16:35 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to <GET https://www.winemag.com/wine-ratings> from <GET http://www.winemag.com/wine-ratings> 2019-02-19 14:16:35 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to <GET https://www.winemag.com/wine-ratings/> from <GET https://www.winemag.com/wine-ratings> 2019-02-19 14:16:35 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.winemag.com/wine-ratings/> (referer: None)

<200 https://www.winemag.com/wine-ratings/>

我不知道为什么它没有获得完整的链接,请有人给我一个建议。

0 投票
1 回答
396 浏览

python - 无法使用 Scrapy 抓取下一页内容

我也想从下一页刮掉内容,但它没有转到下一页。我的代码是:

我没有使用 urljoin 因为 next_page_url 给了我整个 url。我还在 yield 函数中尝试了dont_filter=true参数,它给了我一个通过第一页的无限循环。我从终端收到的消息是[scrapy.spidermiddlewares.offsite] DEBUG: Filtered offsite request to 'www.startech.com.bd': https://www.startech.com.bd/component/processor?page =2>

0 投票
1 回答
1285 浏览

python - 如何使用 Rabbitmq 或 Kafka 扩展以 user_id 作为输入并从数据库获取相应 url 的 Scrapy spider?

我已经构建了将 user_id 作为命令行参数并从数据库中获取 url 的 scrapy spider。现在我希望我的应用程序具有可扩展性。

同时,我正在查看互联网上提供的一些解决方案,但并非都完全符合我的要求,因为有些建议将一堆 url 传递给 scrapy 并进行抓取,而其他建议使用 root url 并将所有内容留给 Scrapy,但是我的用例完全不同。我在这里寻找方法。

如果我可以在蜘蛛之间分发客户端 ID,而不是分发 URL,那也很好。

0 投票
1 回答
486 浏览

python - Scrapy FormRequest 无法将复杂的字典作为 formdata 处理

我正在尝试将 formdata 提供给一个 scrapy.FormRequest 对象。formdata 是以下结构的字典:

通过等效于以下代码,在scrapy shell中运行:

作为回应,我收到以下错误:

我尝试了多种解决方案,包括将整个内容作为字符串,使用各种转义字符以及 dict 的变体以使其更容易接受,但是消除此错误的解决方案都不适用于请求(我得到 400回复)。

我知道 formdata 以及我所做的一切都是正确的,因为我已经在 curl 中成功复制了它(formdata 是通过 提供的-d formdata.txt)。

有没有办法解决 FormRequest 无法处理复杂的 dict 结构?还是我错过了什么?

0 投票
1 回答
62 浏览

python - 当类包含空格时获取空数组

蟒蛇 2.7

我想获取每个新的背景图片 url 和标题,但是当我尝试获取图片 url 时,我使用 xpath 总是得到空数组。

这是我尝试的:

进而

我可以在终端上看到 html 数据。但是当我输入

得到空数组,我认为它应该可以工作。

问题发生是因为类包含空格吗?

如何解决?任何帮助,将不胜感激。

我尝试命令仍然得到空数组

0 投票
1 回答
48 浏览

python - scrapy shell 与用户界面不同,部分网站不可抓取

问题是我无法抓取网站的一部分。如果我使用 Chrome 开发模式,我无法在 xpath 或选择器中复制正确的位置。

我会得到其他选项卡或 div 的正确路径,例如正文标题:body > div.header.home-header > div

而当我试图获取包含我想要的信息的选项卡时,我只得到:#htmlContent. 如果我手动编写它应该是:body > div.main.main-top.seach-boxstyle > div > div > div.recommend-product-wrap.produc-text > div > div.recommend-product,但返回一个空列表。

我正在考虑是否有人引用了整个会话,所以我不能刮,或者这是另一个问题。网址是中文的:http ://www.usewealth.com/Product/More.aspx?productDisplay=isArticle

我正在尝试帮助一家公司抓取自己的推荐掉期列表,而该列表并未以任何方式出现。

0 投票
1 回答
1477 浏览

scrapy - 如何将 python 请求与 scrapy 一起使用?

我试图用来requests获取页面然后将响应对象传递给解析器,但我遇到了一个问题:

builtins.AttributeError:“生成器”对象没有属性“dont_filter”

0 投票
0 回答
311 浏览

python - 在单独的行中抓取问题和答案,例如 A1 列的第一行包含 que 1 第一行 A2 col catains answer for qes 1 等等

在此处输入图片描述我想从以下网站https://www.sanfoundry.com/python-mcqs-basic-operators/抓取问卷

格式应使每个问题和答案都显示在不同的列中。如果问题只包含没有任何 html 标记的文本,那就更好了。

我使用scrapy来抓取这些信息,但我面临的问题是所有问题都出现在一行中,而所有答案都出现在另一行中。我需要显示为:问题 1 在一行中,该问题的相应答案在另一行中。

我需要使用scrapy代码在没有html标签的2个不同行中的每个问题和相应答案。请更正我提供的代码。

0 投票
1 回答
30 浏览

xpath - 通过使用 XPath 创建的响应进行解析

使用 Scrapy,我想从 HTML 格式良好的网站中提取一些数据。使用 XPath,我可以提取项目列表,但我无法使用 XPath 从列表中的元素中提取额外数据

所有 XPath 都已使用 XPather 进行了测试。我已经使用包含网页的本地文件测试了这个问题,同样的问题。

开始:

物品是这样的:

当使用以下 Xpath 提取“我想要的文本”时,我没有得到任何东西:

输出为空,为什么?