鱼C论坛

 找回密码
 立即注册
查看: 25226|回复: 198

[作品展示] 我胡汉三又回来了,这次给鱼油带来多线程爬虫案例,以及踩过的深坑

  [复制链接]
发表于 2019-1-27 05:01:51 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 Stubborn 于 2019-1-27 16:12 编辑

如果本贴可以给鱼油学习帮助,或者觉得不错请动动指头,帮忙评分,顶帖,非常感谢!默默为这个网址默哀三分钟
大致的多线程内容,等明天我会再修改下
先贴上一段踩坑代码(修正在83-101行代码,有注释,不懂或有有疑惑,可以在评论区留言会一回复):
    def save_img(self,img_number,img_url,title):
        "图集下载"
        headers = {
            'User-Agent': ua.random,
            'Referer': 'http://i.meizitu.net'
        }
        for i in range(1,int(img_number)+1):
            img_subset_url = img_url + "/%s" % i
            img_url = etree.HTML(requests.get(img_subset_url,headers=headers).text)
            img_save_url = img_url.xpath('//div[@class="main-image"]/p/a/img/@src')[0]  #图片下载地址
            img_name = '%s\\' % title + img_url.split('/')[-1]
            #开始下载图片
            response = requests.get(img_save_url, headers=headers)
            with open(img_name,"wb") as f:
                f.write(response.content)
为什么说这段代码坑呢,所有的图片下载地址都 解析OK,在保存本地前,所有的参数都正常传递,但是但是,一开始保存就出bug,for不会进行循环,导致数据不能支持下载保存。有兴趣的鱼油可以思考下,为什么会这样,修正之后为什么可以了?本贴过些天会详细讲解下,这个爬虫案例。重新修改帖子。经过反复测试,最终OK了,可以正常运行下载保存图片。本人也是看了一个是学习视频,做了这个爬虫。参考了@四点好 这个鱼友爬虫代码,最终OK了,首先说明下代码需要用到的库:有安装lxml库的朋友,确定自己的库带etree模块
import requests,threading,os
from fake_useragent import UserAgent
from queue import Queue
from lxml import etree
代码如下:(把PY文件放在需要下载保存的目录)
游客,如果您要查看本帖隐藏内容请回复

评分

参与人数 10荣誉 +36 鱼币 +33 贡献 +21 收起 理由
LuckyTiger66 + 5 + 5 + 3 鱼C有你更精彩^_^
Yvonne! + 5 + 5 + 3 鱼C有你更精彩^_^
黑色光亮 + 5 + 5 + 3 鱼C有你更精彩^_^
dexterpengji + 3 + 2 + 1 鱼C有你更精彩^_^
七不斯 + 5 + 3 + 2 感谢楼主无私奉献!
冬雪雪冬 + 5 + 5 + 5 鱼C有你更精彩^_^
Y0uWill_1Will + 1 + 1 牛啤,告诉我头像番号
秋木叶 + 5 + 5 + 3
四点好 + 2 + 1 + 1 感谢楼主无私奉献!
iwanna + 1 鱼C有你更精彩^_^

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-1-27 05:12:07 | 显示全部楼层
本帖最后由 Stubborn 于 2019-1-27 05:19 编辑

@iwanna @四点好 给我评分点赞顺便占楼备用  @冬雪雪冬  可以申精吗,过些天准备把此贴改成多线程爬虫案例教学。可以吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-1-27 08:05:20 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-1-27 16:09:54 | 显示全部楼层
本帖最后由 Stubborn 于 2019-1-27 16:14 编辑
iwanna 发表于 2019-1-27 12:40
程序运行不了,看不懂你的连接路径的操作,我把94行改了一下


跟新你的吧~还像问一句,想加一个下载进度条,怎么加好~!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-1-27 16:30:03 | 显示全部楼层
先保存一下,以后学
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-1-28 09:48:38 | 显示全部楼层
Mark 一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-1-28 17:24:12 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-1-29 01:03:51 | 显示全部楼层
iwanna 发表于 2019-1-27 12:40
程序运行不了,看不懂你的连接路径的操作,我把94行改了一下

我咋觉得多线程要沉帖了,都去看妹子了,标题没有打妹子图嘛~~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-1-29 03:42:48 | 显示全部楼层
iwanna 发表于 2019-1-29 01:17
我的帖子不一样没人看
如果你是以学习为目的写的,何必在意有没有人看.何况也不是什么牛逼项目
你去gi ...

什么网站,我去学习学习下~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-1-29 06:41:17 From FishC Mobile | 显示全部楼层
看看可口可乐了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-1-29 14:45:21 | 显示全部楼层
hello
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-1-29 15:44:25 | 显示全部楼层
感谢分享
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-1-31 16:25:04 | 显示全部楼层
比个小心心给你
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-1 15:47:13 | 显示全部楼层
占个楼,以后用到再回来学习,楼主加油
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-2 08:33:28 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-2-2 13:36:37 | 显示全部楼层
膜拜
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-2-13 18:38:31 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-2-13 19:58:31 From FishC Mobile | 显示全部楼层
可以的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-14 09:00:37 | 显示全部楼层
好用~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-2-14 10:51:20 | 显示全部楼层
学习一下~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-28 20:35

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表