我可以成功打开URL并将生成的页面保存为. html文件。但是,我无法确定如何下载和保存. mhtml(网页,单个文件)。
我的代码是:
import urllib.parse, time
from urllib.parse import urlparse
import urllib.request
url = ('https://www.example.com')
encoded_url = urllib.parse.quote(url, safe='')
print(encoded_url)
base_url = ("https://translate.google.co.uk/translate?sl=auto&tl=en&u=")
translation_url = base_url+encoded_url
print(translation_url)
req = urllib.request.Request(translation_url, headers={'User-Agent': 'Mozilla/6.0'})
print(req)
response = urllib.request.urlopen(req)
time.sleep(15)
print(response)
webContent = response.read()
print(webContent)
f = open('GoogleTranslated.html', 'wb')
f.write(webContent)
print(f)
f.close
我已经尝试使用这个问题中捕获的细节来使用wget:但细节不完整(或者我根本无法理解)。
在现阶段,任何建议都将是有益的。
4条答案
按热度按时间guz6ccqo1#
您是否尝试使用Selenium和Chrome Webdriver来保存页面?
vaj7vani2#
我有一个更好的解决方案,它不需要任何可能的手工操作,也不需要指定存放mhtml文件的路径,我是从一个中文博客上学到的,关键是使用
chrome-dev-tools
命令。下面的代码是一个例子。
希望这对你有帮助!more things about chrome dev protocols
6jjcrrmo3#
保存为mhtml,需要添加参数'--save-page-as-mhtml'
b1payxdu4#
我就是这么写的。如果有错我很抱歉。
我创建了一个类,所以你可以使用它。下面三行是例子。
此外,您还可以根据需要更改睡眠的秒数。
顺便说一下,也支持非英语键盘,如日语和韩语键盘。
python3.8.10
selenium ==4.4.3