python scrapy 爬取某表情网站表情图【源码+GIF表情包下载】
本帖最后由 null119 于 2018-2-12 20:49 编辑先上图:
源代码【python才学几天,代码丑陋,还请各位多多包涵】:
import scrapy
import os,sys
import requests
import re
class scrapyone(scrapy.Spider):
name = "stackone"
start_urls = ["http://qq.yh31.com/ql/bd/"]
def parse(self,response):
hrf=response.xpath('//*[@id="main_bblm"]/div/dl/dd/li')
for li in hrf:
item={}
href=li.xpath('a/@href').extract()
hreftext=li.xpath('a/text()').extract()
full_url = 'http://qq.yh31.com'+ ''.join(list(href))
hreftext=''.join(list(hreftext))
#文件夹名称
if hreftext=='>更多>':
continue
path = 'C:\GIF'
if not os.path.exists(path):
os.makedirs(path)
item['dirname']=hreftext
yield scrapy.Request(url=full_url,meta={'key':item},callback = self.parse1)
def parse1(self,response):
ite={}
full_url=[]
url1 = response.xpath('//*[@id="pe100_page_infolist"]/a/@href').extract()
url2 = response.xpath('//*[@id="pe100_page_infolist"]/a/@href').re('\d+')
url1 = ''.join(url1)
url1 = url1.split('_')
url2 = ''.join(url2)
ite['dirn']=response.meta['key']['dirname']
for i in range(1,int(url2)+1):
full_url='http://qq.yh31.com'+url1+'_'+str(i)+'.html'
#print(full_url)
yield scrapy.Request(url=full_url,meta={'key1':ite},callback = self.parse2)
def parse2(self,response):
p1=response.meta['key1']['dirn']
resp = response.xpath('//*[@id="main_bblm"]/div/li/dt/a')
path = 'C:\GIF\\'+''.join(p1)
if not os.path.exists(path):
os.makedirs(path)
for lst in resp:
alt = lst.xpath('img/@alt').extract()
src = lst.xpath('img/@src').extract()
src = 'http://qq.yh31.com'+ ''.join(list(src))
alt = ''.join(list(alt))
html=requests.get(src)
with open(path+'\\'+alt+'.gif', 'wb') as file:
file.write(html.content)
脚本执行方式:cmd-->切换到脚本所在目录-->scrapy runspider xxxx.py
执行后会自动根据GIF分类在c:\gif文件夹下建立相应文件夹存储gif图片
不想麻烦的就直接到百度网盘下载吧,我已经传上去了
链接:https://pan.baidu.com/s/1c3YYTfq 密码:1t8h 天天404 发表于 2018-2-12 21:38
请问楼主学了多长时间的py?能分享下在哪学的吗我也想学...先谢谢啦
三、四天吧,从百度网盘上下载的,不过没转存,所以也找不到了,目录如下
01_PYTHON基础、进阶、项目(Python零基础学员可先看)
02_Python 视频 分布式 爬虫Scrapy入门到精通 Redis MongoDB教程
03_七月算法_Python爬虫项目班
04_Python3爬虫入门到精通课程视频附软件与资料 34课 null119 发表于 2018-2-12 23:57
三、四天吧,从百度网盘上下载的,不过没转存,所以也找不到了,目录如下
01_PYTHON基础、进阶、项目(P ...
非常感谢您的建议,祝dalao生活愉快:loveliness: python好玩啊
我也刚学爬了12306,准备学Qt然后做个窗体
谢谢,学写一下 辛苦楼主了。 感谢分享 谢谢楼主分享 感谢分享! 请问楼主学了多长时间的py?能分享下在哪学的吗{:1_904:}我也想学...先谢谢啦 如果楼主能做到 采集并直接发布在网站 请联系我 谢谢 支持楼主,试试