首页 > 编程语言 >Python爬虫-第五章-2-爬取某网站图库

Python爬虫-第五章-2-爬取某网站图库

时间:2023-02-17 23:31:45浏览次数:57  
标签:get Python pic 爬虫 page 爬取 headers requests find

技术点

   1.requests

   2.beautifulSoup

ps:程序可扩展

   1.比如翻页下载

   2.下拉加载更多可以用selenium

   3.多线程或者异步协程提升下载效率

   4.自动选择类型继续下载...


import requests
from bs4 import BeautifulSoup
from fake_useragent import UserAgent

ua = UserAgent()
user_agent = ua.random
headers = {
'user-agent': user_agent
}
domain = 'https://www.umei.cc'
resp = requests.get(f'{domain}/bizhitupian/diannaobizhi/', headers=headers)
resp.encoding = 'utf-8'
main_page = BeautifulSoup(resp.text, 'html.parser')
a_list = main_page.find('ul', attrs={'class': 'pic-list after'}).find_all('a', class_=None)
for url in a_list:
sub_pageUrl = domain + url.get('href')
resp1 = requests.get(sub_pageUrl, headers=headers)
resp1.encoding = 'utf-8'
child_page = BeautifulSoup(resp1.text, 'html.parser')
pic_src = child_page.find('section', attrs={'class': 'img-content'}).find('img').get('src')
pic_name = child_page.find('div', class_='main-bt').find('h1').text
picResp = requests.get(pic_src, headers=headers)
with open(f'../FileForDemo/Umei/{pic_name}.jpg', mode='wb') as file:
file.write(picResp.content)
picResp.close()
resp1.close()
print(f'{pic_name}下载完成')
print('主页当前的链接已下载完毕')

标签:get,Python,pic,爬虫,page,爬取,headers,requests,find
From: https://blog.51cto.com/mooreyxia/6064570

相关文章

  • 用Python做一个小说下载器,从获取数据到编写GUI界面
    对于广大书虫而言,没有小说看是最痛苦的,你身边有这样的人吗?今天咱们分享一个小说下载器代码,打包成exe后,发给你的小伙伴也能直接使用…思路流程什么是爬虫?......
  • python项目中的“填坑”记录
    基础Python是动态类型的语言,Python中任何事物皆对象,如变量、数据结构、函数、类、模块等等,在创建一个对象的时候就会占用内存,Python中对象和引用是分离。Python的内存管理......
  • python-json解析
    json函数:json.dumps:将python对象解析成jsonjson.loads:将已编码的JSON字符串解码为Python对象json.dumps使用将数组转为json格式数据importjsonif__name__=='__main_......
  • python 的 match case 用法详解
    Python3.10实现的match功能是其他开发语言中传统的switch的超集,它不仅仅是switch,可以实现更为复杂的功能。模式匹配大大增加了控制流的清晰度和表达能力。背景......
  • python的下载安装与使用
    一、python解释器版本创作者:龟叔1.1python1.X(可忽略)1.2python2.xpython2.x的最高版本是2.7版本,现在仍然有不少企业老项目在使用2.7版本1.3python3.x目前比较稳定的版......
  • Python有以下几个方面的优势
    Python是一种非常流行和强大的编程语言,它有以下几个方面的优势:1、易学习,易阅读:Python语法简洁清晰,代码风格优雅,类似于英语。Python适合编程初学者入门,也适合经验丰富的开发......
  • Python3默认字符编码的问题
    输出报错UnicodeEncodeError:'ascii'codeccan'tencodecharactersinposition0-1:ordinalnotinrange(128)>>>importsys>>>sys.stdout.encoding'ANSI_X3.4-1......
  • 通过Windows定时任务执行Python脚本给钉钉群发送消息
    前提:已经存在有成功发送钉钉群机器人消息的python脚本,参考上一篇Python调用钉钉群机器人发送群消息Windows定时任务设置1、本机是Win7系统:控制面板->系统和安全->管理工......
  • python入门之函数function
    """函数function定义:功能,使用一个名称,包装多个语句语法:做def名字(形参):函数体......
  • Python中的几种矩阵乘法【转】
    一. np.dot()1.同线性代数中矩阵乘法的定义。np.dot(A,B)表示:对二维矩阵,计算真正意义上的矩阵乘积。对于一维矩阵,计算两者的内积。2.代码 【code】importnum......