电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

python 爬取壁紙網(wǎng)站的示例

瀏覽:103日期:2022-06-23 16:30:09

本次爬蟲用到的網(wǎng)址是:

http://www.netbian.com/index.htm: 彼岸桌面.里面有很多的好看壁紙,而且都是可以下載高清無損的,還比較不錯,所以我就拿這個網(wǎng)站練練手。

作為一個初學者,剛開始的時候,無論的代碼的質(zhì)量如何,總之代碼只要能夠被正確完整的運行那就很能夠讓自己開心的,如同我們的游戲一樣,能在短時間內(nèi)得到正向的反饋,我們就會更有興趣去玩。

學習也是如此,只要我們能夠在短期內(nèi)得到學習帶來的反饋,那么我們的對于學習的欲望也是強烈的。

作為一個菜雞,能夠完整的完整此次爬蟲程序的編寫,那便是一個最大的收貨,但其實我在此次過程中的收獲遠不止此。

好的代碼其實應(yīng)該具有以下特性

能夠滿足最關(guān)鍵的需求 容易理解 有充分的注釋 使用規(guī)范的命名 沒有明顯的安全問題 經(jīng)過充分的測試

就以充分的測試為例,經(jīng)常寫代碼的就應(yīng)該知道,盡管多數(shù)時候你的代碼沒有BUG,但那僅僅說明只是大多數(shù)情況下是穩(wěn)定的,但是在某些條件下就會出錯(達到出錯條件,存在邏輯問題的時候等)。這是肯定的。至于什么原因,不同的代碼有不同的原因。如果代碼程序都是一次就能完善的,那么我們使用的軟件的軟件就不會經(jīng)常更新了。其他其中的道理就不一 一道說了,久而自知

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

1.便于維護2.可復(fù)用3.可擴展4.強靈活性5.健壯性

經(jīng)過我的代碼運行我發(fā)現(xiàn)時間復(fù)雜度比較大,因此這是我將要改進的地方,但也不止于此。也有很多利用得不合理的地方,至于存在的不足的地方就待我慢慢提升改進吧!

路過的大佬歡迎留下您寶貴的代碼修改意見,

完整代碼如下

import osimport bs4import reimport timeimport requestsfrom bs4 import BeautifulSoupdef getHTMLText(url, headers): '''向目標服務(wù)器發(fā)起請求并返回響應(yīng)''' try: r = requests.get(url=url, headers=headers) r.encoding = r.apparent_encoding soup = BeautifulSoup(r.text, 'html.parser') return soup except: return ''def CreateFolder(): '''創(chuàng)建存儲數(shù)據(jù)文件夾''' flag = True while flag == 1: file = input('請輸入保存數(shù)據(jù)文件夾的名稱:') if not os.path.exists(file): os.mkdir(file) flag = False else: print(’該文件已存在,請重新輸入’) flag = True # os.path.abspath(file) 獲取文件夾的絕對路徑 path = os.path.abspath(file) + '' return pathdef fillUnivList(ulist, soup): '''獲取每一張圖片的原圖頁面''' # [0]使得獲得的ul是 <class ’bs4.BeautifulSoup’> 類型 div = soup.find_all(’div’, ’list’)[0] for a in div(’a’): if isinstance(a, bs4.element.Tag): hr = a.attrs[’href’] href = re.findall(r’/desk/[1-9]d{4}.htm’, hr) if bool(href) == True:ulist.append(href[0]) return ulistdef DownloadPicture(left_url,list,path): for right in list: url = left_url + right r = requests.get(url=url, timeout=10) r.encoding = r.apparent_encoding soup = BeautifulSoup(r.text,'html.parser') tag = soup.find_all('p') # 獲取img標簽的alt屬性,給保存圖片命名 name = tag[0].a.img.attrs[’alt’] img_name = name + '.jpg' # 獲取圖片的信息 img_src = tag[0].a.img.attrs[’src’] try: img_data = requests.get(url=img_src) except: continue img_path = path + img_name with open(img_path,’wb’) as fp: fp.write(img_data.content) print(img_name, ' ******下載完成!')def PageNumurl(urls): num = int(input('請輸入爬取所到的頁碼數(shù):')) for i in range(2,num+1): u = 'http://www.netbian.com/index_' + str(i) + '.htm' urls.append(u) return urlsif __name__ == '__main__': uinfo = [] left_url = 'http://www.netbian.com' urls = ['http://www.netbian.com/index.htm'] headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36' } start = time.time() # 1.創(chuàng)建保存數(shù)據(jù)的文件夾 path = CreateFolder() # 2. 確定要爬取的頁面數(shù)并返回每一頁的鏈接 PageNumurl(urls) n = int(input('訪問的起始頁面:')) for i in urls[n-1:]: # 3.獲取每一個頁面的首頁數(shù)據(jù)文本 soup = getHTMLText(i, headers) # 4.訪問原圖所在頁鏈接并返回圖片的鏈接 page_list = fillUnivList(uinfo, soup) # 5.下載原圖 DownloadPicture(left_url, page_list, path) print('全部下載完成!', '共' + str(len(os.listdir(path))) + '張圖片') end = time.time() print('共耗時' + str(end-start) + '秒')運行

python 爬取壁紙網(wǎng)站的示例

部分展示結(jié)果如下:

python 爬取壁紙網(wǎng)站的示例

以上就是python 爬取壁紙網(wǎng)站的示例的詳細內(nèi)容,更多關(guān)于python 爬取壁紙網(wǎng)站的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 深圳彩钢板_彩钢瓦_岩棉板_夹芯板_防火复合彩钢板_长鑫 | 食品级焦亚硫酸钠_工业级焦亚硫酸钠_焦亚硫酸钠-潍坊邦华化工有限公司 | 隔爆型防爆端子分线箱_防爆空气开关箱|依客思 | 滚珠丝杆升降机_螺旋升降机_丝杠升降机-德迈传动 | 高空重型升降平台_高空液压举升平台_高空作业平台_移动式升降机-河南华鹰机械设备有限公司 | 罗氏牛血清白蛋白,罗氏己糖激酶-上海嵘崴达实业有限公司 | 防爆正压柜厂家_防爆配电箱_防爆控制箱_防爆空调_-盛通防爆 | 闪电优家-卫生间防水补漏_酒店漏水渗水维修_防水堵漏公司 | 许昌奥仕达自动化设备有限公司| 板框压滤机-隔膜压滤机-厢式压滤机生产厂家-禹州市君工机械设备有限公司 | [官网]叛逆孩子管教_戒网瘾学校_全封闭问题青少年素质教育_新起点青少年特训学校 | 氧化铝球_高铝球_氧化铝研磨球-淄博誉洁陶瓷新材料有限公司 | 杭州代理记账多少钱-注册公司代办-公司注销流程及费用-杭州福道财务管理咨询有限公司 | 高压互感器,电流互感器,电压互感器-上海鄂互电气科技有限公司 | 齿轮减速机_齿轮减速电机-VEMT蜗轮蜗杆减速机马达生产厂家瓦玛特传动瑞环机电 | 工业废水处理|污水处理厂|废水治理设备工程技术公司-苏州瑞美迪 今日娱乐圈——影视剧集_八卦娱乐_明星八卦_最新娱乐八卦新闻 | 首页-瓜尔胶系列-化工单体系列-油田压裂助剂-瓜尔胶厂家-山东广浦生物科技有限公司 | 电动车头盔厂家_赠品头盔_安全帽批发_山东摩托车头盔—临沂承福头盔 | 陶氏道康宁消泡剂_瓦克消泡剂_蓝星_海明斯德谦_广百进口消泡剂 | 长沙一级消防工程公司_智能化弱电_机电安装_亮化工程专业施工承包_湖南公共安全工程有限公司 | 蜜蜂职场文库_职场求职面试实用的范文资料大全 | 不锈钢/气体/液体玻璃转子流量计(防腐,选型,规格)-常州天晟热工仪表有限公司【官网】 | 大通天成企业资质代办_承装修试电力设施许可证_增值电信业务经营许可证_无人机运营合格证_广播电视节目制作许可证 | 冷轧机|两肋冷轧机|扁钢冷轧机|倒立式拉丝机|钢筋拔丝机|收线机-巩义市华瑞重工机械制造有限公司 | 北钻固控设备|石油钻采设备-石油固控设备厂家 | 苏州同创电子有限公司 - 四探针测试仪源头厂家 | 阴离子_阳离子聚丙烯酰胺厂家_聚合氯化铝价格_水处理絮凝剂_巩义市江源净水材料有限公司 | 整车VOC采样环境舱-甲醛VOC预处理舱-多舱法VOC检测环境仓-上海科绿特科技仪器有限公司 | 鲁网 - 山东省重点新闻网站,山东第一财经门户 | 加气混凝土砌块设备,轻质砖设备,蒸养砖设备,新型墙体设备-河南省杜甫机械制造有限公司 | 渣油泵,KCB齿轮泵,不锈钢齿轮泵,重油泵,煤焦油泵,泊头市泰邦泵阀制造有限公司 | 结晶点测定仪-润滑脂滴点测定仪-大连煜烁| 包装设计公司,产品包装设计|包装制作,包装盒定制厂家-汇包装【官方网站】 | 雨燕360体育免费直播_雨燕360免费NBA直播_NBA篮球高清直播无插件-雨燕360体育直播 | SDG吸附剂,SDG酸气吸附剂,干式酸性气体吸收剂生产厂家,超过20年生产使用经验。 - 富莱尔环保设备公司(原名天津市武清县环保设备厂) | 气弹簧定制-气动杆-可控气弹簧-不锈钢阻尼器-工业气弹簧-可调节气弹簧厂家-常州巨腾气弹簧供应商 | 苏州工作服定做-工作服定制-工作服厂家网站-尺品服饰科技(苏州)有限公司 | RFID电子标签厂家-上海尼太普电子有限公司 | 国际线缆连接网 - 连接器_线缆线束加工行业门户网站 | PTFE接头|聚四氟乙烯螺丝|阀门|薄膜|消解罐|聚四氟乙烯球-嘉兴市方圆氟塑制品有限公司 | 济南货架定做_仓储货架生产厂_重型货架厂_仓库货架批发_济南启力仓储设备有限公司 |