【问题标题】:Python urllib wget save complete pagePython urllib wget 保存完整页面
【发布时间】:2019-06-27 17:15:08
【问题描述】:

我想下载带有urllibwget或类似python包的网页,完整

生成的 html 文件不同对于 Webpage, CompleteWebpage, HTML Onlywget.download 或 @987654327 @似乎在做。

这两个 html 文件不同的 URL 示例:https://smash.gg/tournament/genesis-6/events/smash-for-switch-singles/brackets/500500/865126

【问题讨论】:

    标签: python web-scraping beautifulsoup wget urllib


    【解决方案1】:

    可以模拟按CTRL+s,然后s保存(找到here

    from selenium import webdriver
    from selenium.webdriver.common.action_chains import ActionChains
    from selenium.webdriver.common.keys import Keys
    
    driver = webdriver.Chrome()
    driver.get('https://smash.gg/tournament/genesis-6/events/smash-for-switch-singles/brackets/500500/865126')
    
    save_me = ActionChains(driver).key_down(Keys.CONTROL).key_down('s').key_up(Keys.CONTROL).key_up('s')
    save_me.perform()
    

    【讨论】:

    • 运行您的代码后,我在任何地方都看不到下载的文件。是否需要按下Enter 键或其他什么?
    • 不这么认为。我会对此进行更多研究。
    【解决方案2】:

    您链接的页面在很大程度上依赖于 javascript,尤其是 AJAX 请求。 wget 根本不解析 Javascript,因此如果 JS 源代码中有任何需要的链接,Wget 将简单地跳过它们。这就是导致您注意到的差异的原因。

    您可能无法使用 wget 或 urllib 之类的东西完全保存此页面。因为它们都主要使用 HTML 源。 Wget 也可以处理 CSS,但仅此而已。对于脚本繁重的页面,您需要一些更复杂的东西。如果您真的想以编程方式保存它,则需要使用 Selenium。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-01-06
      • 2012-06-02
      • 2020-07-17
      • 2012-06-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多