问题标签 [scrapy-splash]

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 回答
3664 浏览

javascript - 获取脚本标签内的内容

大家好,我正在尝试在脚本标签中获取内容。

http://www.teknosa.com/urunler/145051447/samsung-hm1500-bluetooth-kulaklik

这是网站。

这也是我想在里面输入的脚本标签。

我试过这个。

谢谢你的帮助。

0 投票
1 回答
781 浏览

scrapy - 从 TripAdvisor 抓取动态加载图像

我正在尝试从 TripAdvisor 网站上抓取评论。由于网站中的大多数图像都是动态加载的,因此我使用 Splash javascript 渲染服务来生成页面。

问题是某些图像已加载,而有些则未加载。

这是我要抓取的评论的 URL: https ://www.tripadvisor.com.sg/ShowUserReviews-g294265-d1770798-r446535418-Marina_Bay_Sands-Singapore.html

我尝试将 Splash 等待时间设置为 10 秒(最大值),结果仍然相同。

这是我在 Splash 中使用的代码:

这是 Splash 生成的结果图像(裁剪出的页脚部分): 点击查看图像

如您所见,除了评论中的图像(它们应该在红色矩形中)之外,所有其他动态加载图像都已加载。我检查了 html 并发现存在 img 标签,但它们的 src 属性是“.../x.gif”,这是一个像素图像,而不是真实图像的 URL。

有没有人有这样的问题或知道为什么会这样?

0 投票
2 回答
399 浏览

javascript - 如何从网站获取 javascript 动态内容

我正在尝试从网站获取动态内容。

我试图用scrapy获得内容。但是内容是用 js 文件加载的。所以它没有进入文本。

然后我为此安装了 selenium,但现在我收到了 No such session 错误。

例如,这是我试图获取内容的页面。

http://www.hepsiburada.com/fox-fitness-new-target-70e-2-5-hp-motorlu-masajli-kosu-bandi-hediye-secenekleriyle-p-SPORKONKSBFOX0081?magaza=Finspor

我只是为这个网站尝试了这个。

这就是我想要得到的内容。

0 投票
2 回答
3348 浏览

python - 从 Splash 请求中读取 cookie

在使用 Splash 发出请求后,我正在尝试访问 cookie。以下是我构建请求的方式。

该脚本是 Splash 文档的精确副本。

所以我试图访问网页上设置的 cookie。当我不使用 Splash 时,下面的代码会按我的预期工作,但在使用 Splash 时不会。

使用 Splash 时返回:

2017-01-03 12:12:37 [蜘蛛] 调试:Cookie:无

当我不使用 Splash 时,此代码有效并返回网页提供的 cookie。

Splash 的文档将此代码显示为示例:

我不确定我是否理解正确,但我想说我应该能够以与不使用 Splash 时相同的方式访问 cookie。

中间件设置:

所以我的问题是:如何在使用 Splash 请求时访问 cookie?

设置.py

蜘蛛.py

0 投票
0 回答
150 浏览

python - scrapinghub/splash 在渲染时丢失了一些数据

我正在尝试为动态网站创建网络抓取工具。为此,我使用了 Scrapy 1.2.1 和 scrapy-splash 0.7 库。使用splash server时会出现问题,大多数时候它会返回不同的数据给scrapy。从日志中我可以看到所有页面都被爬取。如果我使用 scrapy.Request 而不是 SplashRequest,一切正常(我每次都得到相同的数据)。

我的代码:

如果有人帮助我,将不胜感激。谢谢。

0 投票
1 回答
2782 浏览

scrapy - 使用scrapy with splash抓取LinkedIn时出现502错误

我尝试使用 Scrapy with Splash 为 Netflix 抓取 Linkedin 公司页面。当我使用scrapy shell时它工作得很好,但在我运行脚本时会出现502错误。

错误:

在 Splash 终端中:

蜘蛛代码:

0 投票
1 回答
840 浏览

scrapy - ScrapySlash“面具”404

我在尝试用我的蜘蛛管理 404 响应时遇到了一些问题。似乎 ScrapySlash 用 200 掩盖了 404 响应。

这是我的代码

一个简单的print response.status总是显示 200。测试我的 urlscrapy shell将显示response <404 http://www.foo.com/>

当我使用 Request 对象时,我的蜘蛛会转到self.errback_httpbin方法,但使用 SpaslRequest 它不会。SlashRequest 正确处理 502 但不是 404。

谢谢

0 投票
2 回答
5953 浏览

python - Scrapy + Splash:连接被拒绝

我正在学习如何使用scrapy + splash。我已经在虚拟环境中创建了一个项目,现在我正在做这个教程:https ://github.com/scrapy-plugins/scrapy-splash 。

我已经飞溅了:

这导致:

当我运行以下蜘蛛时:

一切正常;scrapy 返回正文 html。但是,当我从这样的教程中尝试 SplashRequest 时:

我在终端中收到以下消息:

我的猜测是 splash 会导致一些连接问题,但我不知道如何解决它们。我已经添加:

但这无济于事!

问:有谁知道如何解决这个问题?

编辑:更改ROBOTSTXT_OBEYFalse不起作用。整个控制台日志:

EDIT2:如果我curl http://localhost:8050/render.html?url=http%3A%2F%2Fwww.examp‌​le.com%2F在一个新的终端窗口中运行,我会在我用来运行 splash 的终端窗口中得到以下输出:

0 投票
1 回答
1437 浏览

javascript - Splash API/lua error: attempt to index local element (a nil value)

I'm writing a lua script that I want to use with scrapy + splash for a website. I want to write a script that enters a text and then clicks on a button. I have the following code:

Right now I'm using the splash API to test if my code runs properly. When I click "Render!" I get the following message:

So for some reason element is still nil when I try to send "Wall street, New York". I don't understand why; if I enter the following in chrome console:

I find the desired element!

Q: Does anyone know what I'm doing wrong?

Thanks in advance!

0 投票
1 回答
5161 浏览

javascript - Scrapy + splash:无法选择元素

我正在学习使用带有splash的scrapy。作为练习,我正在尝试访问https://www.ubereats.com/stores/,单击地址文本框,输入位置,然后按 Enter 按钮移动到包含该餐厅的下一页地点。我有以下lua代码:

当我点击“渲染!” 在启动 API 中,我收到以下错误消息:

不知何故,我的 css 表达式是错误的,导致飞溅试图访问未定义/无的元素!我试过其他表达方式,但我似乎无法弄清楚!

问:有谁知道如何解决这个问题?

编辑:尽管我仍然想知道如何实际单击元素,但我想出了如何仅使用键来获得相同的结果:

但是,splash API 中返回的 html/images 来自您输入地址的页面,而不是您输入地址并单击回车后看到的页面。

Q2:如何成功加载第二页?