基于python实现获取网页图片过程解析
环境:python3, 要安装bs4这个第三方库
获取请求头的方法
这里使用的是Chrome浏览器。
打开你想查询的网站,按F12,或者鼠标右键一下选择检查。会弹出如下的审查元素页面:

然后点击上方选项中的Network选项:

此时在按Ctrl+R:

选择下方框中的第一个,单击:

选择Headers选项,其中就会有Request Headers,包括你需要的信息。
介绍:这个程序是用来批量获取网页的图片,用于新手入门
注意:由于是入门的程序在获取某些网页的图片时会出问题!!!!!
import osimport urllib.requestfrom bs4 import BeautifulSoup# 网址url = 'http://www2017.tyut.edu.cn/'# 建立请求对象request = urllib.request.Request(url)# 加入请求头(一定要换成自己的!!!!)request.add_header(’User-Agent’, ’Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36’)# 获取请求code = urllib.request.urlopen(request)# 得到html代码html = code.read().decode(’utf-8’)# 将html的标签转成对象(方便后面的操作)bs = BeautifulSoup(html, ’html.parser’)# 提取所有的img标签imagesUrl = bs.find_all(’img’)sources = []# 建立存放的路径(路径一定要存在!!!!!!)filepath = os.getcwd() + ’images’def createFile(path: str, fpath): urllib.request.urlretrieve(path, fpath)# 获取图片的路径(网址+img标签的src属性的值)for img in imagesUrl: sources.append(url + str(img.get(’src’)))for src in sources: # 用split是防止请求带参 baseName = os.path.basename(src).split(’?’) # 图片名 fileName = filepath + baseName[0] print('url=' + src, 'filename=' + fileName) createFile(src, fileName)print(’这次您一共下载了图片’ + str(len(sources)) + ’张’)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持好吧啦网。
相关文章:
1. vue cli3.0打包上线静态资源找不到路径的解决操作2. .NET的基元类型包括什么及Unmanaged和Blittable类型详解3. Intellij IDEA如何去掉@Autowired 注入警告的方法4. SpringBoot + Vue 项目部署上线到Linux 服务器的教程详解5. 初学者如何快速搭建Express开发系统步骤详解6. 详解JavaScript是如何验证URL的7. phpstorm恢复删除文件的方法8. python GUI库图形界面开发之PyQt5中QWebEngineView内嵌网页与Python的数据交互传参详细方法实例9. 关于ajax异步访问数据的问题10. 使用IDEA编写jsp时EL表达式不起作用的问题及解决方法

网公网安备