假设我已经在浏览器中打开了一个标签。它的URL是:
view-source:http://www.google.com/webhp?source=search_app
现在它已经打开并显示,我只想阅读客户端窗口中的文本。 (获取页面的上下文,或获取其对象(而不是创建新的浏览器对象),或者其他任何内容。然后只需阅读页面。)
Selenium中是否有任何方法,Splinter允许这样做?谢谢你的帮助。
答案 0 :(得分:1)
如果您询问是否可以附加到已打开的浏览器,那么我认为答案是“否”。
答案 1 :(得分:0)
您可以直接使用Selenium获取页面来源:WebDriver.getPageSource()。
但是如果你使用view-source:url
,浏览器会显示一个包含格式化源的html页面。 Firefox例如将每一行包裹在<span id="lineX"></span>
中。而不是解析这个,只需使用getPageSource
而不使用view-source
。
请仔细阅读getPageSource
的文档:
获取上次加载的页面的来源。如果页面在加载后已被修改(例如,通过Javascript),则无法保证返回的文本是已修改页面的文本。请参阅用于确定返回文本是否反映页面当前状态或Web服务器上次发送的文本的特定驱动程序的文档。返回的页面源是底层DOM的表示:不要期望它以与从Web服务器发送的响应相同的方式进行格式化或转义。把它想象成艺术家的印象。
答案 2 :(得分:0)
这就是我以前做的事情: