Python怎样保存网页的全部内容
那需要抽取css,js文件的超级链接,再次访问这些超级链接,写文件。
■网友
谢邀,试了一下,可以用urllib模块的urlretrieve方法可以来保存文件,以百度为例:1.获得主页html:import urllibdef callBack(a,b,c): \u0026#39;\u0026#39;\u0026#39;回调函数 @a:已经下载的数据块 @b:数据块的大小 @c:远程文件的大小 \u0026#39;\u0026#39;\u0026#39; per = 100.0 * a * b / c if per \u0026gt; 100: per = 100 print \u0026#39;%.2f%%\u0026#39; % perurl = \u0026#39;百度一下,你就知道\u0026#39;local = \u0026#39;d://baidu.html\u0026#39;urllib.urlretrieve(url, local, callBack)用谷歌浏览器打开是这个样子:图1
图片没有显示出来2.再获取图片,再用这个方法def getFileData(addr): try: splitPath = addr.split(\u0026#39;/\u0026#39;) fName = splitPath.pop() print fName urllib.urlretrieve(addr, \u0026#39;d://\u0026#39;+fName) except Exception,e: print "Cant\u0026#39;t download: %s:%s" %(fName,e)url0 = \u0026#39;http://www.baidu.com/img/bd_logo1.png\u0026#39;getFileData(url0)print \u0026#39;结束\u0026#39;再再建立如下图D:下就出现了这样的图2 【Python怎样保存网页的全部内容】
图3
把baidu.html源文件的这个 src="https://www.zhihu.com//http://www.baidu.com/img/bd_logo1.png"--\u0026gt;src="http://www.baidu.com/img/bd_logo1.png"刷新就便成了这样子:图4
3.我又尝试了抓jsurl1 = \u0026#39;http://s1.bdstatic.com/r/www/cache/static/global/js/all_async_search_7e03689b.js\u0026#39;getFileData(url1)结果图见图2小结一下,python做爬虫确实强,抓css应该也是没什么问题吧!再依据对应路径配置一下,应该就能达到你想要得效果了。我也好奇你这是要干什么用呢?额,这算是偷取网站的源码吗?
■网友
可以用scrapy框架,里面有个函数可以直接保存图片。或者在html中找到图片的链接,保存下来。
推荐阅读
- 聪明人养花,这3种“花”怎样也要养一盆,每年能省不少医药费
- 互联网怎样解决“家政服务上门速度慢”的问题
- 怎样看待从1月8号起,QQ钱包开始提现收费
- 银行it人怎样转型
- 汽车|冬天怎样让车内温度快速升高?座椅加热的最佳使用方式二,外循环的作用总结
- 怎样进入通信行业
- 怎样评价扶他柠檬茶的小说《云养汉》的结尾
- 怎样成为一名合格的Python程序员?
- 怎样评价华为、诺基亚、中兴中标中国移动高端路由交换设备扩容集采
- 怎样评价类似前橙会、百老汇、南极圈这样类型的离职帮抱团,对企业的积极意义和消极意义