python如何爬取壁纸网站

  介绍

这篇文章主要介绍python如何爬取壁纸网站,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

本次爬虫用到的网址是:

http://www.netbian.com/index.htm彼岸桌面。里面有很多的好看壁纸,而且都是可以下载高清无损的,还比较不错,所以我就拿这个网站练练手。

作为一个初学者,刚开始的时候,无论的代码的质量如何,总之代码只要能够被正确完整的运行那就很能够让自己开心的,如同我们的游戏一样,能在短时间内得到正向的反馈,我们就会更有兴趣去玩。

学习也是如此,只要我们能够在短期内得到学习带来的反馈,那么我们的对于学习的欲望也是强烈的。

作为一个菜鸡,能够完整的完整此次爬虫程序的编写,那便是一个最大的收的货,但其实我在此次过程中的收获远不止此。

好的代码其实应该具有以下特性

<李>

能够满足最关键的需求

<李>

容易理解

<李>

有充分的注释

<李>

使用规范的命名

<李>

没有明显的安全问题

<李>

经过充分的测试

就以充分的测试为例,经常写代码的就应该知道,尽管多数时候你的代码没有错误,但那仅仅说明只是大多数情况下是稳定的,但是在某些条件下就会出错(达到出错条件,存在逻辑问题的时候等)。这是肯定的。至于什么原因,不同的代码有不同的原因。如果代码程序都是一次就能完善的,那么我们使用的软件的软件就不会经常更新了。其他其中的道理就不一一道说了,
久而自知

好的代码一般具有5大的特性

1。便于维护
2。可复用
3。可扩展
4。强灵活性
5。健壮性

经过我的代码运行我发现时间复杂度比较大,因此这是我将要改进的地方,但也不止于此。也有很多利用得不合理的地方,至于存在的不足的地方就待我慢慢提升改进吧!

路过的大佬欢迎留下您宝贵的代码修改意见,

完整代码如下

import 操作系统   import  bs4   import 再保险   import 时间   import 请求   得到bs4  import  BeautifulSoup      def  getHTMLText (url,标题):   “““才能向目标服务器发起请求并返回响应“““   尝试才能:   ,,,r =, requests.get (url=url,标题=标题)   ,,,r.encoding =r.apparent_encoding   ,,,soup =, BeautifulSoup (r.text,“html.parser")   ,,,return 汤   除了才能:   ,,,return ““      def  CreateFolder ():   “““才能创建存储数据文件夹“““   flag 才能=,真的   while 才能;flag ==, 1:   ,,,file =,输入(“请输入保存数据文件夹的名称:“)   ,,,if  not  os.path.exists(文件):   ,,,,,os.mkdir(文件)   ,,,,,flag =False   ,,,:   ,,,,,印刷(& # 39;该文件已存在,请重新输入& # 39;)   ,,,,,flag =,真的      #,才能os.path.abspath(文件),获取文件夹的绝对路径   path 才能=,os.path.abspath(文件),+,“\ \”;   return 才能;路径      def  fillUnivList (ulist,,汤):   “““才能获取每一张图片的原图页面“““   #才能,[0]使得获得的ul是,& lt; class  & # 39; bs4.BeautifulSoup& # 39;祝辞,类型   div 才能=,soup.find_all (& # 39; div # 39;,, & # 39;列表# 39;)[0]   for 才能;a 拷贝div(& # 39;一个# 39;):   ,,,if  isinstance (a, bs4.element.Tag):   ,,,,,hr =, a.attrs [& # 39; href # 39;】   ,,,,,href =, re.findall(" # 39;/桌子/(1 - 9)\ d {4} . htm # 39;,,人力资源)   ,,,,,if  bool (href),==,真的:   ,,,,,,,ulist.append (href [0])      return  ulist才能      def  DownloadPicture (left_url、列表、路径):   for 才能;right 拷贝列表:   ,,,url =, left_url  +,正确的   ,,,r =, requests.get (url=url,超时=10)   ,,,r.encoding =r.apparent_encoding   ,,,soup =, BeautifulSoup (r.text,“html.parser")   ,,,tag =, soup.find_all (“p")   ,,,#,获取img标签的alt属性,给保存图片命名   ,,,name [0]=,标签.a.img.attrs[& # 39;内容# 39;]   ,,,img_name =, name  +,“.jpg"   ,,,#,获取图片的信息   ,,,img_src [0]=,标签.a.img.attrs [& # 39; src # 39;】   ,,,试一试:   ,,,,,img_data =, requests.get (url=img_src)   ,,,除了:   ,,,,,继续      ,,,img_path =, path  + img_name   ,,,with 开放(img_path & # 39; wb # 39;), as 外交政策:   ,,,,,fp.write (img_data.content)   ,,,print (img_name,,,,, * * * * * *下载完成!“)      def  PageNumurl (url):   num 才能=,int(输入(“请输入爬取所到的页码数:“))   for 才能小姐:拷贝范围(2,num + 1):   ,,,u =,“http://www.netbian.com/index_", +, str (i), +,“.htm"   ,,,urls.append (u)      return 才能;url         if  __name__ ==,“__main__":   时间=uinfo 才能;[]   left_url =,才能“http://www.netbian.com"   urls 才能=,(“http://www.netbian.com/index.htm")   headers 才能=,{   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

python如何爬取壁纸网站