Python----爬虫入门(基于BeautifuSoup框架)

首先介绍:什么是爬虫,通俗易懂的解释就是,你可以在网页上获取你想要的信息

现在信息爆炸的时代,信息量很大,同时垃圾信息也变得很多,如何通过爬虫简练的提取我们所需要的内容就显得很重要,毕竟,没必要浪费时间去看那些对自己不感兴趣的内容。

URL:统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。(简单点来说就是一个资源在网上的位置,用一种统一的格式去描述这个位置)

大体上,爬虫就是获取要访问的URL,然后对URL进行访问,获取HTML页面,然后对这个页面进行信息的抽取。

Python给我们提供了很多框架:例如Scrapy,BeautifuSoup等框架

这次我主要介绍的是BeautifulSoup框架

使用BeautifulSoup

 

可以看到我们使用了BeautifulSoup可以直接.标签,获取相应的内容

然后正文了:

from bs4 import BeautifulSoup
import requests
import re
import os
import time
from urllib.request import urlretrieve
#伪装头部,让网站误以为是浏览器访问
header={
	'upgrade-insecure-requests':'1',
	'user-agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36'
}
# 斗图吧连接
url="https://www.doutula.com/photo/list/"
# 访问url
response = requests.get(url,headers=header)
# 使用BeautifulSoup封装我们获取到的网页
html = BeautifulSoup(response.content)
print(html)

看img对应的class

通过这个我们可以获取所有图片

from bs4 import BeautifulSoup
import requests
import re
import os
import time
from urllib.request import urlretrieve
#伪装头部,让网站误以为是浏览器访问
header={
	'upgrade-insecure-requests':'1',
	'user-agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36'
}
# 斗图吧连接
url="https://www.doutula.com/photo/list/"
# 访问url
response = requests.get(url,headers=header)
# 使用BeautifulSoup封装我们获取到的网页
html = BeautifulSoup(response.content)
#find_all获取所有满足条件的内容
#第一个是标签,第二个是所对应的参数,参数是字典的形式
img_list = html.find_all('img',attrs={'class':'img-responsive lazy image_dta'})
list = []
for img in img_list:
	print(img)

如果我们要抽取其中的连接,其实也很简单:

要多导入一个模块,urlretrieve

from bs4 import BeautifulSoup
import requests
import re
import os
import time
from urllib.request import urlretrieve
#伪装头部,让网站误以为是浏览器访问
header={
	'upgrade-insecure-requests':'1',
	'user-agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36'
}
# 斗图吧连接
url="https://www.doutula.com/photo/list/"
# 访问url
response = requests.get(url,headers=header)
# 使用BeautifulSoup封装我们获取到的网页
html = BeautifulSoup(response.content)
#find_all获取所有满足条件的内容
#第一个是标签,第二个是所对应的参数,参数是字典的形式
img_list = html.find_all('img',attrs={'class':'img-responsive lazy image_dta'})
list = []
for img in img_list:
	list.append(img['data-original'])
#进行下载
index = 0
for i in list:
	#捕获异常,假设下载不了的就跳过,进行下一张的下载
	try:
		#设置下载的路径
		path = os.path.join('images',str(index)+".jpg")
		#下载
		urlretrieve(i,filename=path)
		index = index+1
		time.sleep(1)
	except Exception as e:
		index = index + 1
		continue

 

 

 

一个最简单的爬虫小程序就这样完成了

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值