1. # -*- coding:utf-8 -*-
  2. from bs4 import BeautifulSoup as BS
  3. import urllib.request as rqst
  4. import os
  5.  
  6. url = 'http://xxxxxxx'
    headers = {'User-Agent': 'xxxxxx(这个网上随便找一个都可以)','Accept-Encoding':'utf-8'}
    r = rqst.Request(url, headers=headers) 
  7. html = rqst.urlopen(url)
  8.  
  9. #网页用bs解析
  10. bs = BS(req, 'lxml')
  11.  
  12. #获取css,js,img文件的路由
  13. elc = bs.find_all('link', type='text/css')
  14. elj = bs.find_all('script')
  15. eli = bs.find_all('img')
  16.  
  17. #保存css,js,img文件

for c in elc:
    url = c['href'] #如果href不完整需要自己调整,下面的一样

file = url.split('/')[-1] #获取文件名

if(os.path.exists (file)==False):
      try:
        res = rqst.urlopen(url)
        txt = res.read()
        with open(file, 'wt', encoding='utf-8') as f:
          f.write(txt)
          f.close()
      except Exception:
        pass

for j in elj:
    if(i.has_attr('src')):
      url = j['src'] 
      file = url.split('/')[-1]
      if(os.path.exists(file)==False):
        try:
          res = rqst.urlopen(url)
          txt = res.read()
          with open(file, 'wt', encoding='utf-8') as f:
            f.write(txt)
            f.close()
        except Exception:
          pass

for i in eli:
    url = i['src']
    url = 'http://www.fmhhqb.com'+url
    file = url.split('/')[-1]
    if(os.path.exists(file)==False):
      try:
        r = getRequest(url)
        res = rqst.urlopen(r)
        txt = res.read()
        with open(file, 'wb') as f:
          f.write(txt)
          f.close()
      except Exception:
        pass

利用beautifulsoup下载网页html代码中的css, js, img文件并保存的更多相关文章

  1. TP5.1:将外部资源引入到框架中(css/js/font文件)

    为了让我们的框架形式变得更加好看,我们需要加入Bootstrap和Jq文件到框架中 1.通过Bootstrap和jq官网进行相关文件的下载 (1)Bootstrap下载地址:https://v3.bo ...

  2. Spring MVC程序中得到静态资源文件css,js,图片文件的路径问题总结

    上一篇 | 下一篇 Spring MVC程序中得到静态资源文件css,js,图片 文件的路径 问题总结 作者:轻舞肥羊 日期:2012-11-26 http://www.blogjava.net/fi ...

  3. 小白学Python(7)——利用Requests下载网页图片、视频

    安装 Requests 如果安装了Requests就已经可用了,否则要安装 Requests,只要在你的CMD中运行这个简单命令即可: pip install requests requests使用 ...

  4. 在java代码中,用xslt处理xml文件

    http://blog.csdn.net/zhou_lei/article/details/2661735 ********************************************** ...

  5. Batsing的网页编程规范(HTML/CSS/JS/PHP)

    特别注意!!!我这里的前端编程规范不苟同于Bootstrap的前端规范. 因为我和它的目的不同,Bootstrap规范是极简主义,甚至有些没有考虑到兼容性的问题. 我的规范是自己从编程实践中总结出来的 ...

  6. JAVA中解决Filter过滤掉css,js,图片文件等问题

    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOE ...

  7. 转:JAVA中解决Filter过滤掉css,js,图片文件等问题

    原文链接:https://www.cnblogs.com/ermeng/p/6440966.html public void doFilter(ServletRequest request, Serv ...

  8. Spring MVC程序中怎么得到静态资源文件css,js,图片文件的路径问题

    问题描述 在用springmvc开发应用程序的时候.对于像我一样的初学者,而且还是自学的人,有一个很头疼的问题.那就是数据都已经查出来了,但是页面的样式仍然十分简陋,加载不了css.js,图片等资源文 ...

  9. 网页中嵌入可以点击“运行代码”执行html/css/js代码

    html代码 <textarea name="textarea" cols="60" rows="10" id="rn01& ...

随机推荐

  1. Django—处理流程

    用户通过浏览器发送请求 请求到达request中间件,中间件对request请求做预处理或者直接返回response 若未返回response,会到达urlconf路由,找到对应视图函数 视图函数做相 ...

  2. kotlin字符串模板&条件控制

    字符串模版: 小时候都有要求记日记的习惯,下面是一小学生记的日记: 很漂亮的流水账,那细分析一下这些文件其实大体都类似,只有几个不同点: 其实就是地点变了,那对于这种有规律的文字可以采用kotlin的 ...

  3. C#信号量(Semaphore,SemaphoreSlim)

    Object->MarshalByRefObject->WaitHandle->Semaphore 1.作用: 多线程环境下,可以控制线程的并发数量来限制对资源的访问 2.举例: S ...

  4. CentOS7 内核优化 修改参数

    一:内核简介 内核是操作系统最基本的部分.它是为众多应用程序提供对计算机硬件的安全访问的一部分软件,这种访问是有限的,并且内核决定一个程序在什么时候对某部分硬件操作多长时间. 内核的分类可分为单内核和 ...

  5. Android利用json进行网络解析

    必须单开一个线程,android界面的主线程不会负责通信模块

  6. [转载]ac mysql 无法远程连接

    Mac mysql 无法远程连接 2018年07月23日 10:56:02 feixiang2039 阅读数 2866   版权声明:本文为博主原创文章,遵循CC 4.0 by-sa版权协议,转载请附 ...

  7. GenericJDBCException: could not execute statement 错误解决

    "message":"could not execute statement; nested exception is org.hibernate.exception.G ...

  8. 微信小程序 base64ToArrayBuffer

    base64ToArrayBuffer 将 base64 的字符串转化为 ArrayBuffer 对象 示例代码: 使用位置:在 JS文件的任意函数中使用 const base64 = 'CxYh'; ...

  9. Filtering Approaches for Real-Time Anti-Aliasing(2011 SIGGRAPH)

    Filtering Approaches for Real-Time Anti-Aliasing(2011 SIGGRAPH) 在2011的SIGGRAPH上,NVIDA提出了FXAA3.1,本文主要 ...

  10. react-native-pg-utils(对react-native全局进行配置,对内置对象原型链增加方法,增加常用全局方法.)

    react-native-pg-utils 对react-native全局进行配置,对内置对象原型链增加方法,增加常用全局方法. 每次新建react-native项目之后都会发现有一些很常用的方法在这 ...