爬虫(也称为网络爬虫、网页蜘蛛等)是一种自动化程序,能够在互联网上自动抓取、分析和收集数据。它们按照一定的规则和算法,遍历互联网上的网页,收集数据并将其存储在本地计算机或数据库中,以供后续分析和利用。
爬虫可以用于很多不同的领域,例如搜索引擎、数据挖掘、竞争情报、价格监测等等。例如,搜索引擎需要爬虫来收集互联网上的网页信息,以便在用户搜索时能够提供相关的结果。具体来说,爬虫的工作流程如下:
- 发送请求:爬虫首先向目标网站发送请求,请求的内容包括要获取的网页地址、请求头信息等。
- 接收响应:目标网站接收到请求后,会返回一个响应,响应的内容包括网页的HTML代码、状态码、响应头信息等。
- 解析网页:爬虫接收到响应后,需要对网页进行解析,提取出需要的数据。解析网页的方式有多种,例如正则表达式、 XPath、BeautifuISoup等。
- 存储数据:爬虫将解析出来的数据存储到本地或者数据库中,以便后续的分析和处理。
举例写一个上网爬美女图片的案例,然后再对图片进行保存 #使用爬虫到网上去爬一些数据 import requests from lxml import etree import os from selenium import webdriver from PIL import Image as im browser = webdriver.Edge() #获取地址 url='https://baijiahao.baidu.com/s?id=1761874515754793087' browser.get(url) contents=browser.page_source # print(contents) a=0 tree=etree.HTML(contents) name=tree.xpath('//div[@id="ssr-content"]//div[@class="_18p7x"]/div/div/img/@src') for i in name : resp=requests.get(i) img=resp.content #图片的保存,对于requests使用content二进制的属性进行保存 a+=1 with open(".//图片//123//picture%s.jpg"%a,"wb") as f: f.write(img)