【问题标题】:Pycurl javascriptpycurl javascript
【发布时间】:2018-09-28 08:02:40
【问题描述】:

我创建了一个 python 3 脚本,允许我在搜索引擎 (DuckDuckGo) 上进行搜索,获取 HTML 源代码并将其写入文本文件。

import pycurl
from io import BytesIO

buffer = BytesIO()
c = pycurl.Curl()
c.setopt(c.URL, 'https://duckduckgo.com/?q=test')
c.setopt(c.WRITEDATA, buffer)
c.setopt(c.FOLLOWLOCATION, True)
c.perform()
c.close()

body = buffer.getvalue()
with open("output.htm", "w") as text_file:
    text_file.write(str(body))
print(body.decode('iso-8859-1'))

这部分代码工作正常。但是,当我尝试打开包含搜索引擎的 HTML 源代码的 output.htm 文件时,我什么也没得到(我得到一个 input,里面写着我的搜索主题)。我想拥有与在终端上运行 curl https://duckduckgo.com/?q=test 所获得的相同的 HTML 源代码。

【问题讨论】:

    标签: javascript python html pycurl


    【解决方案1】:

    Duckduckgo 的 html 页面使用 javascript 将他们的搜索结果加载到他们的 html 标记中,因此 curlPyCurl 将无法获得与 curl/@987654325 在浏览器中看到的相同的 html 内容@ 仅获取 Internet 资源,但不提供任何 javascript 处理。

    使用https://duckduckgo.com/api 而不是抓取在他们的服务器/数据库中查找搜索结果。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-01-08
      • 2013-04-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-09
      • 2014-06-26
      相关资源
      最近更新 更多