Python爬取堆糖网优美古风头像(附源码)[Python基础]

python

前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理

如果大家想要完成爬虫程序,先安装和导入几个包

  • requests 网络库
  • bs4 页面选择器 网页上筛选数据

安装包

  • pip install requests
  • pip install bs4

os python语言自带的一个工具库

ssl工具包 https协议的网站是基于ssl加密从而传输数据的一种网站

一般爬虫的过程

  • 模拟浏览器
  • 强制取消证书认证 看情况去做的 http的协议网站 则不需要
  • requests去做http请求,并且拿到网页数据
  • 数据筛选 拿到我们想要的数据
  • 下载

本次目标

爬取堆糖网图片

https://www.duitang.com/

 

爬虫代码

导入工具

import ssl

import os

# 下载包

import urllib.request

# 网络包

import requests

# 网页选择器

from bs4 import BeautifulSoup

请求头

headers = {

"User-Agent":

"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36"

}

默认请求https网站不需要证书认证

ssl._create_default_https_context = ssl._create_unverified_context

爬虫流程

def get_images(url):

images_html = requests.get(url, headers=headers).text

# print(images_html)

soup = BeautifulSoup(images_html, "lxml")

images_list = soup.find_all("div", class_="mbpho")

# print(images_list)

for image in images_list:

image_data = image.find("a", class_="a")

image_url = image_data.find("img")["src"]

# 获取图片名称 下载图片时需要给图片文件一个文件名

image_id = image_data.find("img")["data-rootid"]

# print(image_url, image_id)

print(os.path.splitext(image_url)[-1])

try:

urllib.request.urlretrieve(image_url, "./古风头像/" + image_id + os.path.splitext(image_url)[-1])

print("下载成功...")

except:

pass

url = "https://www.duitang.com/search/?kw=%E5%8F%A4%E9%A3%8E%E5%A4%B4%E5%83%8F&type=feed"

get_images(url)

效果图

 

 

 

 

 

以上是 Python爬取堆糖网优美古风头像(附源码)[Python基础] 的全部内容, 来源链接: utcz.com/z/530528.html

回到顶部