python爬虫笔记1----爬取流程与第一只简单的爬虫

#爬虫的流程分析:

1.请求数据:requests库(这个库可以非常方便的去请求网络数据)

*安装方法:

pip install requests
2.将请求下来的数据解析出来,获取我们想要的数据,把不想要的数据抛弃掉。

*BeautifulSoup:

	pip install bs4

*lxml:

	pip install lxml
3.将解析后的数据保存下来。如果是文字类型的,可以保存到文件中或者是数据库中或者缓存中都可以。如果是文件类型,比如图片,视频,那么可以保存到硬盘中。
4.无论你的爬虫是大还是小,他都是由这几个模块组成的。

-----------------------------------------------------------------分割线----------------------------------------------------------------------------------------------

第一只简单的爬虫

import requests



headers={
    "User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"
}
response=requests.get("https://www.doutula.com/photo/list/?page=1",headers=headers)

text= response.text
print(text) 

代码说明

import requests

导入requests包。

headers={
    "User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"
}

headers=headers;对请求身份进行伪装,“Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36”获取方式如下:
在这里插入图片描述
1)右键—审查元素
在这里插入图片描述
2)选择“network”
在这里插入图片描述
3)F5刷新–选择左侧任一项—找到最下方的"User-Agent"
在这里插入图片描述

二、增加数据解析

import requests
from bs4 import BeautifulSoup
#首先对请求身份进行伪装

headers={
    "User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"
}
response=requests.get("https://www.doutula.com/photo/list/?page=3",headers=headers)

text= response.text
# print(text)


soup=BeautifulSoup(text,"lxml")
#img_list=soup.find_all("img",attrs={"class":"img-responsive lazy image_dta loaded"})
img_list=soup.find_all("img",attrs={"class":"img-responsive lazy image_dta"})
#print(img_list)
for img in img_list:
    img_url=img["data-original"]
    print(img_url)

其中:

soup=BeautifulSoup(text,"lxml")

对数据解析。

#img_list=soup.find_all("img",attrs={"class":"img-responsive lazy image_dta loaded"})

按照如图所示的步骤,选择class,并复制其值;并将其后面的“loaded”删除
在这里插入图片描述

print(img_list)

运行此行代码后会将所有的图片都列出来。如下为其中一张图片的列表。

[<img alt="平平淡淡才是真" class="img-responsive lazy image_dta" data-
backup="http://img.doutula.com/production/uploads/image//2019/03/12/20190312392310_fHazjZ.jpg!dta" data-
original="https://ws4.sinaimg.cn/bmiddle/9150e4e5gy1g0zq7i7a2ej20qh0qldhb.jpg" 
src="//static.doutula.com/img/loader.gif" style="width: 100%; height: 100%;"/>,
for img in img_list:
    img_url=img["data-original"]
    print(img_url)

从以上的列表中,寻找图片的url为“data-original”的图片来链接。

三、下载第一张图片并保存

import requests
from bs4 import BeautifulSoup
from urllib import request
#首先对请求身份进行伪装

headers={
    "User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"
}
response=requests.get("https://www.doutula.com/photo/list/?page=3",headers=headers)

text= response.text
# print(text)


soup=BeautifulSoup(text,"lxml")
#img_list=soup.find_all("img",attrs={"class":"img-responsive lazy image_dta loaded"})
img_list=soup.find_all("img",attrs={"class":"img-responsive lazy image_dta"})
#print(img_list)
for img in img_list:
    img_url=img["data-original"]
    print(img_url)
    request.urlretrieve(img_url,"test.jpg")
    break

其中

    request.urlretrieve(img_url,"test.jpg")
    break

从img_url中下载一张图片,并重命名为test.jpg;
运行效果:
在这里插入图片描述___________________________________________________________________________________________________
参考链接:https://edu.csdn.net/course/play/20379/255979

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值