问题标签 [scrapy-pipeline]

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 投票
2 回答
618 浏览

python - 抓取多个表并将每个表头存储为 csv 中的行

我正在尝试抓取多个表,这些表的表名存储在 h3 标签下。有数据列我可以毫无问题地抓取,当我提供下一个 url 时,我可以将此数据附加到 csv 文件中。我无法解决的问题是获取表头并将其相对于表的每一行存储。这样做的原因是当下一张桌子被喂食时,我需要知道它属于哪个桌子。是否可以在我们说“Round”时使用 len 循环来确定表格长度,然后将表格标题写入每一行?可以与物品出口有关吗?

这是我的代码 spider.py

项目.py

0 投票
2 回答
517 浏览

python-3.x - scrapy管道类的访问实例

我想访问该变量self.cursor以使用活动的 postgreSQL 连接,但我无法弄清楚如何访问管道类的scrapy实例。

请注意,我意识到我可以process_item通过 using访问,但该函数正在做其他事情,我希望通过inyield item访问连接并能够随意从我的蜘蛛调用类的实例!谢谢你。self.cursorcheckUrlExist

0 投票
0 回答
372 浏览

python - scrapy - 下载图片而不压缩图片

我正在尝试下载一些没有压缩的图像。
例如http://p1.pstatp.com/origin/433c000159def0223671
这张图片大约是 2.0MB
,当我使用 scrapy 下载它时它只有 120Kb。


设置.py


项目.py


蜘蛛.py


管道.py

我想下载原图。我应该怎么办 ?

0 投票
0 回答
115 浏览

python - 使用 Scrapy JsonItemsLinesExporter,不返回任何值

我在一个抓取程序中有多个蜘蛛,我试图同时从脚本中运行所有蜘蛛,然后将内容转储到 JSONfile 中。当我在每个蜘蛛上使用外壳并执行 -o xyz.json 时,它工作正常。

我试图在这里遵循这个相当彻底的答案: 如何创建自定义 Scrapy Item Exporter?

但是当我运行该文件时,我可以看到它在 shell 中收集数据,但它根本不输出它。

下面我按顺序复制:Exporter、Pipeline、Settings、

出口商:

我正在努力确定 self.file.write 括号中的内容?

管道:

设置:

我希望/恐怕这是一个简单的遗漏,因为这似乎是我的 MO,但我对抓取非常陌生,这是我第一次尝试这样做。

如果有更稳定的方法来导出这些数据,我会全力以赴,否则你能告诉我我错过了什么,那就是阻止数据被导出?或阻止出口商被正确调用。

[编辑以更改设置中的管道名称]

0 投票
1 回答
1389 浏览

python - Scrapy 错误:“管道”对象没有属性“导出器”

我制作了一个刮刀,并正在使用教程使用管道导出。当我运行时,scrapy crawl [myspider]我看到终端中的对象闪烁,但每次它都会给出错误 'PostPipeline' object has no attribute 'exporter'

我的蜘蛛

设置.py

我不认为settings.py 的其余部分是相关的?

管道.py

附加信息

process_item方法引发错误:

当我运行scrapy crawl [myspider] -o somefile.xml时,文件被创建,但它没有内容。

与此处相同的错误,但那里没有答案...

任何帮助是极大的赞赏!

更新: 虽然没有真正解决这个问题,但我现在至少可以使用简单的管道导出数据

使用命令scrapy crawl [myspider] -o somefile.xml。为什么直接从教程中获取的早期方法不起作用,仍然不知道。

0 投票
1 回答
3550 浏览

python - 如何使用scrapy获取数据?

我正在做一个 Django 项目,我想在主页上提供一些新闻提要。我最近与scrapy进行了交互,当我使用“scarpy shell”运行给定代码时,该代码能够成功获取数据。但是,当我将此代码放入脚本中以自动将新闻源发送到模板时,此代码将不起作用并引发“错误获取未定义”

我试过这个:

使用命令:

这也不起作用,如何将此代码转换为脚本。

错误日志:

0 投票
2 回答
1629 浏览

python - Scrapy 存储在变量中返回项目以在主脚本中使用

我对 Scrapy 很陌生,想尝试以下方法:从网页中提取一些值,将其存储在变量中并在我的主脚本中使用它。因此,我按照他们的教程并为我的目的更改了代码:

到目前为止,这可以工作,但我很确定这不是一个好的样式,或者如果我将 title 变量定义为全局变量,甚至会产生一些不好的副作用。如果我跳过该行,那么我当然会得到“未定义的变量”错误:/因此我正在寻找一种方法来返回变量并在我的主脚本中使用它。

我已阅读有关项目管道的信息,但无法使其工作。

任何帮助/想法都非常感谢:)在此先感谢!

0 投票
1 回答
1421 浏览

image - Scrapy Image Pipeline:如何重命名图像?

我有一个抓取数据和图像的蜘蛛。我想用我正在获取的相应“标题”重命名图像。

以下是我的代码:

蜘蛛1.py

项目.py

管道.py

设置.py

您能否帮助我进行所需的更改,以便scrapy可以将抓取的图像保存为'title'.jpg格式,其中标题被蜘蛛抓取?

0 投票
1 回答
28 浏览

python - 为什么我的管道返回以前修改的项目?

我创建了一个管道来将每个项目保存在 ElasticSearch 上。在此管道上,我检查项目是否已存在以检查管理员是否覆盖某些字段,以强制重新索引(获取此字段并将其保存/覆盖在新项目上)

但是,当产品存在并填充my_field时,脚本会在所有下一个项目上保存相同的内容,尽管该字段不存在。所以我所有的数据都损坏了..

有人知道为什么吗?

0 投票
0 回答
169 浏览

web-scraping - Scrapy 最佳实践:在爬虫或管道中连接到数据库?

我正在抓取一个包含项目列表的主页。在我的管道中,我连接到数据库来存储项目。我的下一个任务是转到每个单独的项目页面并抓取评论。我需要再次连接到数据库,看看我是否已经刮掉了评论。

我在管道中还是在爬网脚本中连接到数据库更有效?
有没有办法从管道中返回并告诉爬虫爬取评论?