相关疑难解决方法(0)

无头浏览器和抓取 - 解决方案

我正在尝试为浏览器自动测试套件和能够抓取的无头浏览器平台列出可能的解决方案列表.


浏览器测试/清除:

  • Selenium - 浏览器自动化中的多语言旗舰,Python,Ruby,JavaScript,C#,Haskell等的绑定,用于Firefox的IDE(作为扩展),用于更快的测试部署.可以充当服务器并具有大量功能.

JAVASCRIPT

  • PhantomJS - JavaScript,带有屏幕捕获和自动化的无头测试,使用Webkit.从版本1.8开始,实现了Selenium的WebDriver API,因此您可以使用任何WebDriver绑定,并且测试将与Selenium兼容
  • SlimerJS - 与PhantomJS类似,使用Gecko(Firefox)代替WebKit
  • CasperJS - 基于PhantomJS和SlimerJS构建的JavaScript具有额外的功能
  • Ghost驱动程序 - 用于PhantomJSWebDriver Wire协议的JavaScript实现.
  • 新的 PhantomCSS - CSS回归测试.CasperJS模块,用于使用PhantomJS和 Resemble.js自动进行可视化回归测试.
  • WebdriverCSS -插件为 Webdriver.io自动化视觉回归测试
  • 新的 PhantomFlow - 通过测试描述和可视化用户流.Web用户界面测试的实验方法.
  • new trifleJS - 将PhantomJS API移植到使用Internet Explorer引擎.
  • 新的 CasperJS IDE (商业)

Node.js的

  • Node-phantom - 填补了PhantomJSnode.js之间的空白
  • WebDriverJs - Selenium团队对node.js的Selenium WebDriver绑定
  • WD.js - WebDriver/Selenium 2的节点模块
  • yiewd - …

selenium scrapy web-scraping phantomjs casperjs

362
推荐指数
3
解决办法
7万
查看次数

使用Python抓取Web页面

我正在尝试开发一个简单的网络刮刀.我想在没有HTML代码的情况下提取文本.事实上,我实现了这个目标,但我已经看到在加载JavaScript的某些页面中我没有获得好的结果.

例如,如果某些JavaScript代码添加了一些文本,我看不到它,因为当我打电话时

response = urllib2.urlopen(request)
Run Code Online (Sandbox Code Playgroud)

我没有添加原始文本(因为JavaScript在客户端中执行).

所以,我正在寻找一些解决这个问题的想法.

python python-2.x web-scraping urlopen

154
推荐指数
12
解决办法
20万
查看次数

机械化和Javascript

我想使用Mechanize来模拟使用活动JavaScript浏览网页,包括DOM Events和AJAX,到目前为止我还没有办法做到这一点.

我查看了一些支持Spynner和Zope等JavaScript的Python客户端浏览器,但它们都不适用于我.Spynner一直崩溃PyQt,Zope似乎不支持JavaScript.

有没有办法模拟仅使用Python进行浏览(没有额外的进程),如WATIR或操作Firefox或Internet Explorer的库,同时完全支持Javascript,就像实际浏览页面一样?

javascript python browser mechanize

26
推荐指数
3
解决办法
3万
查看次数

支持JS的Python浏览器模拟器

我想从网站上获取一些数据.通常我会用mechanize这些东西,但现在网站用JS提供数据.唉,mechanize不支持它.

我可以用什么呢?

python mechanize

3
推荐指数
1
解决办法
2万
查看次数

BeautifulSoup返回不正确的文字

我正试图在下面的网站上搜索现场网球比分.当比赛结束时,我正在抓取变化,我可以获得分数,但在比赛期间,当我搜索保留分数的相关"跨度"课程时,我返回课程但分数为空白(见下文) )

http://www.scoreboard.com/game/6LeqhPJd/#game-summary

score = score.findAll('span',attrs={'class':'scoreboard'})
Run Code Online (Sandbox Code Playgroud)

输出:

[<span class="scoreboard">-</span>, <span class="scoreboard">-</span>]
Run Code Online (Sandbox Code Playgroud)

预期产出

[<span class="scoreboard">1</span>, <span class="scoreboard">0</span>]
Run Code Online (Sandbox Code Playgroud)

使用萤火虫我可以看到这些领域内的得分,但我似乎无法归还它.谁会知道为什么会发生这种情况..?

注意:当上述URL中的匹配完成后,分数的元素会发生变化.这只是LIVE比赛的一个问题......

python beautifulsoup

2
推荐指数
1
解决办法
1988
查看次数