Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Python的Web抓取Javascript_Python_Python 2.7 - Fatal编程技术网

使用Python的Web抓取Javascript

使用Python的Web抓取Javascript,python,python-2.7,Python,Python 2.7,我习惯用BeautifulSoup来刮网站,但是这个网站是不同的。在soup.prettify()上,我得到了Javascript代码,很多东西。我想刮这个网站上的实际网站(公司名称,电话号码等)的数据。有没有办法删除这些脚本(比如Main.js)来检索网站上显示给我的数据 清晰版本: 代码是: <script src="/docs/Main.js" type="text/javascript" language="javascript"></script> 它保存

我习惯用BeautifulSoup来刮网站,但是这个网站是不同的。在soup.prettify()上,我得到了Javascript代码,很多东西。我想刮这个网站上的实际网站(公司名称,电话号码等)的数据。有没有办法删除这些脚本(比如Main.js)来检索网站上显示给我的数据

清晰版本:

代码是:

<script src="/docs/Main.js" type="text/javascript" language="javascript"></script>


它保存网站上的文本。我想刮取这个文本,但是它是使用JS而不是HTML填充的(我以前使用BeautifulSoup来填充)。

你在问是否可以刮取Javascript在运行时生成的文本。答案有点像


为了让Javascript执行并填充页面,您需要运行某种类型的脚本,比如PhantomJS。然后,您需要将headless browser生成的HTML提供给BeautifulSoup,以便对其进行解析。

您能更清楚地说明您想做什么吗?可能与@AlexanderO'Mara重复抱歉,更新了吗?你在问如何访问
/docs/Main.js
文件吗?@Soviut我在问有没有办法访问页面上的信息。Main.js文件存储在他们的服务器上,但它用文本填充网站。那我怎样才能刮去那篇文章呢?通常我只是在HTML中搜索标签,然后打印内容。当前网页上有文本。然而,当我用BeautifulSoup将其删除后,我得到的只是标签。这是因为浏览器执行javascript,python中的HTTP模块不执行。我现在明白了!谢谢你的帮助!