python网络爬虫(一) 爬取网站图片

阅读: 评论:0

python网络爬虫(一) 爬取网站图片

python网络爬虫(一) 爬取网站图片

网络爬虫系列

python网络爬虫(一) 爬取网站图片
python网络爬虫(二)分页爬取图片

什么是网络爬虫?

网络爬虫(Web Spider),又被称为网页蜘蛛,是一种按照一定的规则,自动地抓取网站信息的程序或者脚本。网络蜘蛛是通过网页的链接地址来寻找网页,从网站某一个页面开始,读取网页的内容,找到在网页中的其它链接地址,然后通过这些链接地址寻找下一个网页,这样一直循环下去,直到把这个网站所有的网页都抓取完为止。

爬虫流程

用户获取网络数据的方式:

  • 方式1:浏览器提交请求—>下载网页代码—>解析成页面
  • 方式2:模拟浏览器发送请求(获取网页代码)->提取有用的数据->存放于数据库或文件中,爬虫要做的就是方式2。

  1. 发起请求

    • 使用request模块的get、post函数
    • 使用url全球统一资源定位符,用来定义互联网上一个唯一的资源 例如:一张图片、一个文件、一段视频都可以用url唯一确定。
    • 请求头User-agent:请求头中如果没有user-agent客户端配置,服务端可能将你当做一个非法用户host;
    • 请求体如果是get方式,请求体没有内容 (get请求的请求体放在 url后面参数中,直接能看到)
      如果是post方式,请求体是format data。
  2. 网站相响应

    • 返回值含义:200为代表成功,301为代表跳转,404为文件不存在,403为无权限访问,502为服务器错误。

利用python request库爬取网站图片

  • 爬取网站:/
  • 进入网站后右击审查,查看Elements部分:
  • 鼠标移动到一张图片上,会显示图片信息:

    我们需要的就是img标签下的src部分。
  • 接下来查看Network部分,选择Img查看相关信息,得到User-Agent和Referer的信息作为Headers的一部分:

  • 具体代码见代码部分。

代码部分

import  requests
import time
from lxml import etree
url = '/'headers = {"Referer":"Referer: /","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36",}resq = (url,headers = headers)print(resq)html = etree.)
srcs = html.xpath(".//img/@src")for i in srcs:imgname = i.split('/')[-1]img = (i,headers = headers)with open('imgs1/'+imgname,'wb') as file:file.t)print(i,imgname)

爬取结果

  • 显示爬取的信息
  • 在相应文件夹下查看图片是否爬取成功

    可以发现图片成功爬取了。

本文发布于:2024-02-05 07:04:13,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170726949864246.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:爬虫   图片   网络   网站   python
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23