【问题标题】:I would like to retrive history words from an online dictionary webpage with Python 3.2 urllib我想使用 Python 3.2 urllib 从在线词典网页中检索历史单词
【发布时间】:2013-01-24 23:57:23
【问题描述】:

我正在使用tureng在线词典进行土耳其语-英语/英语-土耳其语翻译,这个网页记录了单词搜索历史,我想用这个代码检索这些单词

import urllib.request
f = urllib.request.urlopen("http://tureng.com/history/details")
text=f.read().decode('utf-8')
#print(text)

start = text.find("<span class=\"historyTerm\"><a href=\"/search/")

我知道如何解析搜索到的词后缀,但问题是在使用 urllib 检索页面源时,我看不到搜索到的词。它说“这一天没有历史记录”。那么我该如何解决这个问题呢?

搜索几句后查看页面源码,可以看到tureng history words

在我的浏览器中,我可以看到搜索到的词:

在 python 中:

【问题讨论】:

    标签: python-3.x urllib


    【解决方案1】:

    当您查找单词和翻译时,我想您正在使用您的网络浏览器。您正在使用的网站应将查找历史记录存储在 cookie 中或浏览器的缓存中。当您使用您的 python 脚本调用 URL 时,它与使用干净的会话打开一个新的 Web 浏览器相同。

    【讨论】:

    • 是否可以用 Python 检索那些?
    • 您的程序需要分 3 个步骤完成工作:1 - 查询网站,2 - 解析返回的 cookie,3 - 在您的请求中传递 cookie 时声明历史记录。您可以使用 Firebug(Firefox 扩展)查看 cookie 中存储的值。顺便说一句,您确定您使用的网站没有提供好的 API,因为网页抓取可能很无聊(恕我直言)。
    • 我在这里添加了tinypic.com/r/2vkj24l/6 当您对历史/详细信息进行 GET 时浏览器正在传递的 cookie 的屏幕截图,因为您可以看到之前的搜索已存储。
    • 您可以在发出搜索时在响应 cookie 中找到搜索的“历史记录”:tinypic.com/r/2epog9i/6
    【解决方案2】:

    问题实际上包含了答案。您只需单击“导出到 Excel”按钮,即可将所需的所有数据作为简单的 excel 文件提供:-)

    【讨论】:

      猜你喜欢
      • 2021-07-10
      • 2018-07-24
      • 2019-10-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-03
      相关资源
      最近更新 更多