Python中的urllib wget的保存完整的页面

问题描述 投票:0回答:2

我想下载的网页,完成与urllibwget或类似的包蟒蛇。

生成的HTML文件是不是与网页的网页不同,完整,仅HTML是什么wget.downloadurllib.request.urlopen似乎做的事情。

enter image description here

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

python web-scraping beautifulsoup wget urllib
2个回答
0
投票

您可以模拟按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()

0
投票

你链接的页面非常依赖JavaScript和更具体的AJAX请求。 wget不解析的Javascript可言,因此,如果有需要的JS源中的任何链接,Wget的会简单地跳过他们。这是什么原因造成你注意到的差异。

你可能不能够完全保存该页面的东西像wget或urllib的。因为他们都只有HTML源的主要工作。 wget的可以处理CSS为好,但仅此而已。对于一个脚本沉重的页面,你需要的东西复杂得多。如果你真的想以编程方式保存它,你需要去与硒。

© www.soinside.com 2019 - 2024. All rights reserved.