【问题标题】:Extract embedded script from web page从网页中提取嵌入的脚本
【发布时间】:2016-11-10 15:45:11
【问题描述】:

我有一个链接,我想从中抓取内容,如下所示:

https://www.whatever.com/getDescModuleAjax.htm?productId=32663684002&t=1478698394335

但是当我想用 selenium 打开它时,它就不起作用了。当我在普通浏览器中加载它时,它以纯文本形式打开,Html 在括号中,如下所示:

window.productDescription='<div style="clea.... 
#I want this 
....n.jpg" width="950"/></p></div>'";

我在想我会以纯文本格式下载源代码并使用 Bs4 提取我需要的内容。但这不可能是最好的解决方案。有没有办法忽略标签并使用 selenium 和 python 正常加载网页?

【问题讨论】:

    标签: python html ajax selenium-webdriver web-scraping


    【解决方案1】:

    如果所有源代码都在 JS 变量中: window.variable="&lt;div&gt;...&lt;/div&gt;" 那么您可能无法使用 bs4 来解决它,因为 bs4 适用于纯 html DOM 节点。

    有没有办法忽略标签并使用 selenium 和 python 正常加载网页

    Selenium 很可能应该能够强制执行页面上的 JS 并将可变内容加载到页面的 DOM 中。尝试搜索window.productDescriptionproductDescription 表达式在哪里应用/使用(在哪些已加载的.js 文件中)?

    【讨论】:

      猜你喜欢
      • 2018-06-16
      • 1970-01-01
      • 1970-01-01
      • 2014-12-28
      • 1970-01-01
      • 1970-01-01
      • 2020-01-07
      • 2020-05-17
      相关资源
      最近更新 更多