欢迎来真孝善网,为您提供真孝善正能量书籍故事!

Python自动化数据抓取实战教程

时间:11-01 现代故事 提交错误

老铁们,大家好,相信还有很多朋友对于Python自动化数据抓取实战教程和的相关问题不太懂,没关系,今天就由我来为大家分享分享Python自动化数据抓取实战教程以及的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!

导入请求

进口重新

导入时间

导入json

导入操作系统

# 用于去除创建文件时出现的特殊字符,下面会用到

def strip(路径):

路径=re.sub(r"[?\*":/]","",str(路径))

返回路径

爬虫

蜘蛛:类

def __init__(self):

self.session=requests.session() #保留参数

#返回图片id列表

def gei_img_item_ids(self,start_url):

响应=self.download(start_url)

如果响应:

html=response.text.encode("GBK","ignore").decode("GBk") #获取网页源代码

ids=re.findall(r"http://tu.duowan.com/gallery/(d+).html",html) #获取图库的url

返回集合(id)

#根据集合id获取集合信息

def gei_img_item_info(self,img_id):

#观察http://tu.duowan.com/index.php?r=show/getByGallery/gid=136705_=1522715109098使用正则规则

#136705:图像ID 1522715109098: 时间戳*1000 位扩展数字

img_item_url="http://tu.duowan.com/index.php?r=show/getByGallery/gid=%s_=%s" % (img_id,int(time.time()*1000))

响应=self.download(img_item_url)

如果响应:

#返回json文件,注意一下内容,下面会用到

返回json.loads(response.text.encode("GBK","ignore").decode("GBk"))

#下载器

def 下载(self,url):

尝试:

返回self.session.get(url)

除了异常e:

打印(e)

#print(response.text.encode("GBK","ignore").decode("GBk"))

#根据该组图片的信息,坚持

def save_img(self,img_item_info):

#设置文件名

dir_name=strip(img_item_info["gallery_title"].strip())

#print(目录名称)

#判断文件是否存在,如果不存在则创建一个

如果不是os.path.exists(dir_name):

os.makedirs(dir_name)

#根据json文件中的内容,提取信息。图片的后缀名不同,所以必须截取后缀名。

对于img_item_info["picInfo"]: 中的img_info

img_name=strip(img_info["title"].strip())

img_url=img_info["url"]

pix=(img_url.split("/")[-1]).split(".")[-1]

#合成图像的完整路径

img_path=os.path.join(dir_name,"%s.%s" % (img_name,pix))

#判断路径是否存在

如果不是os.path.exists(img_path):

响应=self.download(img_url)

如果响应:

img_data=响应.内容

节省

打开(img_path,"wb")作为f:

f.write(img_data)

跑步

def 运行(自我,start_url):

img_ids=self.gei_img_item_ids(start_url)

# 打印(img_ids)

对于img_ids: 中的img_id

img_item_info=self.gei_img_item_info(img_id)

self.save_img(img_item_info)

如果__name__=="__main__":

Spider=Spider() #实例化对象

关于Python自动化数据抓取实战教程的内容到此结束,希望对大家有所帮助。

用户评论

ー半忧伤

想学 Python 爬虫,可以试试一些简单的项目练习入门!

    有19位网友表示赞同!

暖栀

Python 爬虫真的很有趣啊,感觉能学到很多实用技能!

    有17位网友表示赞同!

站上冰箱当高冷

爬虫练习要注重学习正规的网络爬取技术,保护自己和网站数据安全!

    有18位网友表示赞同!

┲﹊怅惘。

最近看了一些 Python 爬虫教程,觉得还是蛮难学的,需要多练习多思考。

    有15位网友表示赞同!

呆檬

有没有人推荐一些好的 Python 爬虫练习项目?想找点入门难度比较合适的!

    有15位网友表示赞同!

我的黑色迷你裙

爬虫练的时候要注意网站的 robots.txt 文件,不要擅自访问私密信息!

    有16位网友表示赞同!

赋流云

Python 爬虫可以用来抓取很多有用的数据,比如新闻、商品价格等!

    有9位网友表示赞同!

百合的盛世恋

学习 Python 爬虫需要配合一些网络工具和数据分析方法,才能玩出花儿来!

    有19位网友表示赞同!

半梦半醒i

Python 的库确实很强大,像 requests 和 BeautifulSoup 都挺常用的!

    有20位网友表示赞同!

炙年

爬虫练习要注意速度问题,不要频繁请求同一个网站,以免被封!

    有17位网友表示赞同!

抓不住i

在 Python 爬虫中要学会数据处理和清洗,才能得到有用的信息!

    有10位网友表示赞同!

千城暮雪

感觉 Python 爬虫的应用场景越来越广泛了,未来很有发展前景!

    有19位网友表示赞同!

Edinburgh°南空

爬虫练习是一个循序渐进的过程,不要急于求成,慢慢积累经验吧!

    有17位网友表示赞同!

雪花ミ飞舞

有没有 Python 爬虫高手想跟我交流?分享一下你的心得体会?

    有17位网友表示赞同!

枫无痕

学习 Python 爬虫需要具备一定的编程基础和逻辑思维能力!

    有11位网友表示赞同!

未来未必来

Python 的中文文档和社区资源非常丰富,遇到问题可以随时寻求帮助!

    有16位网友表示赞同!

封锁感觉

爬虫练习的过程既有挑战也有乐趣,一定要坚持下去!

    有12位网友表示赞同!

心悸╰つ

我觉得 Python 爬虫是一种很有意思的编程技能,值得一试!

    有13位网友表示赞同!

非想

除了抓取信息,Python 爬虫还可以用来自动化一些任务,提高效率!

    有10位网友表示赞同!

【Python自动化数据抓取实战教程】相关文章:

1.蛤蟆讨媳妇【哈尼族民间故事】

2.米颠拜石

3.王羲之临池学书

4.清代敢于创新的“浓墨宰相”——刘墉

5.“巧取豪夺”的由来--米芾逸事

6.荒唐洁癖 惜砚如身(米芾逸事)

7.拜石为兄--米芾逸事

8.郑板桥轶事十则

9.王献之被公主抢亲后的悲惨人生

10.史上真实张三丰:在棺材中竟神奇复活