169美女图片网以健康、美丽、年轻、时尚的审美定位,为广大网友展现美女的外形美,欣赏当代年轻女性一代的美丽与情怀。
源码分享:
1 ''' 2 在学习过程中有什么不懂得可以加我的 3 python学习交流扣扣qun,934109170 4 群里有不错的学习教程、开发工具与电子书籍。 5 与你分享python企业当下人才需求及怎么从零基础学习好python,和学习什么内容。 6 ''' 7 import requests 8 from pyquery import PyQuery as pq 9 import os10 headers={11 'user-agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0'12 }13 14 #下载图片的模块15 def Download_the_module(file,tehurl):16 count = 117 # 进入网站下载图片18 The_second_request = requests.get(tehurl, headers=headers).text19 # 下载20 The_doc = pq(The_second_request)21 Download_the_pictures = The_doc('.big_img')22 Take_out_the=pq(Download_the_pictures.html())23 Extract_the=Take_out_the.find('img').items()24 for i in Extract_the:25 save=i.attr('src')26 #print(save)27 The_sponse=requests.get(save,headers=headers)28 The_name='F:/图片/'+file29 Save_the_address = str(The_name)30 # 检测是否有image目录没有则创建31 if not os.path.exists(Save_the_address):32 33 34 os.makedirs('F:/图片/' + file)35 else:36 37 38 with open(Save_the_address+'/%s.jpg'%count,'wb')as f:39 f.write(The_sponse.content)40 print('已经下载了%s张'%count)41 count += 142 #爬取地址43 def Climb_to_address(page):44 45 URL='https://www.169tp.com/gaogensiwa/list_3_%s.html'%page46 sponse=requests.get(URL,headers=headers)47 sponse.encoding='gbk'48 encodin=sponse.text49 doc=pq(encodin)50 extract=doc('.pic').items()51 for i in extract:52 #文件名53 The_file_name=i.text()54 #提取到的网站55 The_url=i.attr('href')56 57 Download_the_module(The_file_name,The_url)58 59 #一共有616页60 a=int(input('请输入开始爬取的页数:'))61 b=int(input('请输入结束爬取的页数:'))62 Climb_to_address(a,b)
用Python的一个好处就是能代替我们做重复性的工作,释放我们的劳动力,让我们有时间去做我们喜欢的事情(偷懒)。
本次爬虫其实还有两个问题,一个是:爬取的这个网站没有任何的防爬机制,所以你基本不用费什么力气去加header啊,设置session,cookie这些,也为我们提供了极大的便利,代码写起来也简单。第二个问题是:程序不能中断,一但中断了就要重头开始下载,所以应该要有个方法可以来设置爬虫从哪里开始爬取。这个问题其实也不难解决,就当做是家庭作业吧,大家有空可以去试试!