使用爬虫抓取王者荣耀英雄皮肤
1:创建爬虫项目
scrapy startproject wzry
2:创建爬虫
scrapy genspider jishudaniu example.com
3:启动爬虫
scrapy crawl jishudaniu
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | # -*- coding: utf-8 -*- import scrapy import os import urllib.request class JishudaniuSpider(scrapy.Spider): name = "jishudaniu" #allowed_domains = ["example.com"] #爬虫爬取链接的起点 start_urls = [ 'https://pvp.qq.com/web201605/herolist.shtml' ] def parse( self , response): host_name = "https://pvp.qq.com/web201605/" hero_list = response.xpath( '//div[@class="herolist-box"]/div[@class="herolist-content"]/ul/li/a' ); #// 表示HTML网页结构中任意部位 for link in hero_list: href = link.xpath( './@href' ).extract()[ 0 ] #./表示当前 detial_url = host_name + href yield scrapy.Request(detial_url, self .detial_parse) #print(href) def detial_parse( self ,response): message = response.xpath( '/html/body/script[10]/text()' ).extract()[ 0 ]; heroName = message.split( "," )[ 0 ].replace( "'", "").split(" = ")[1] heroNo = message.split(",")[1].replace("'" , " ").replace(" ; ", " ").split(" = ")[ 1 ].strip() #print(message.split(",")[0].replace("'", "").split("=")[1]); #print(message.split(",")[1].replace("'", "").replace(";", "").split(" = ")[1]); heroSkinLinksTemplate = f "https://game.gtimg.cn/images/yxzj/img201606/skin/hero-info/{heroNo}/{heroNo}-bigskin-" filePath = "E:\\wzryimg\\" if not os.path.exists(filePath + heroName): os.makedirs(filePath + heroName) skins = response.xpath( '//div[@class="pic-pf"]/ul/@data-imgname' ).extract()[ 0 ] skin_list = skins.split( "|" ) tempSkinList = [] for skin in skin_list: tempSkinList.append(skin.split( "&" )[ 0 ]) for index in range ( 0 , len (tempSkinList)): #获取皮肤名称 os.sep:分割符 skinname = tempSkinList[index] fileName = "{}{}{}{}" . format (filePath + heroName,os.sep,skinname, ".jpg" ) print (heroSkinLinksTemplate) urllib.request.urlretrieve(heroSkinLinksTemplate + "{0}.jpg" . format (index + 1 ), filename = fileName) |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
2017-12-13 Chrome表单文本框自动填充黄色背景色样式