一、 前言
10月4号接了一个需求:写个脚本下载几个网站的数据,以减轻其日常手工下载数据之苦,毕竟需要下载近300个文件,手工点选下载确实苦不堪言。
紧锣密鼓写了3天,期间也遇到了不少问题,最终都一一解决,作为总结,我将之前遇到的问题一一整理,也不枉费这么多天的时光。
二、 问题及解决方案
1、 知道下载地址,为什么下载不了数据?
在检查页面的html文档后,我发现客户需要下载的内容都有固定地址,我想我是不是可以不去页面点选,直接用browser.get(url)的方法得到数据,这样就避免模拟手工点选各个TAB和Button了,试了半天后,发现怎么都不行,从报的错误来看也没有看原因,后来静想了一下,可能get(url)没有成功带上登录用户名等cookie信息,所以这一方法不可行。而对于如何带上cookie访问下载地址,我最终没有试成功,加上时间紧。所以还是沿用了手工模拟点选的方法。
2、 Chrome设置好默认下载路径后不起作用
原因不太明确,如我此前一文中所述,使用
‘download.default_directory’: r’d:\downLoad’
可以将chrome的浏览器的下载路径设为指定路径,但实际运行时,却仍下载到c:\…\download下。
解决方案:写一段脚本,自动执行以下动作——打开浏览器的设置页面,点下载内容中的“更改”按钮,再点“选择文件夹”,即