奇酷教育-Python培训|UI培训|WEB大前端培训|Unity3D培训|HTML5培训|人工智能培训|JAVA开发的教育品牌

您現(xiàn)在所在的位置:首頁 >學(xué)員就業(yè) > 學(xué)生感言 > Python1707A學(xué)員感言:寫爬蟲很簡單又很難

Python1707A學(xué)員感言:寫爬蟲很簡單又很難

來源:奇酷教育 發(fā)表于:

 通過這次做項(xiàng)目,使我對(duì)項(xiàng)目開發(fā)有了進(jìn)一步的認(rèn)識(shí)。做項(xiàng)目的時(shí)候,最重要的不是自己如何快速地將自己分配的任務(wù)做完,而是要注重團(tuán)隊(duì)合作

 通過這次做項(xiàng)目,使我對(duì)項(xiàng)目開發(fā)有了進(jìn)一步的認(rèn)識(shí)。做項(xiàng)目的時(shí)候,最重要的不是自己如何快速地將自己分配的任務(wù)做完,而是要注重團(tuán)隊(duì)合作。一開始組內(nèi)必須對(duì)這個(gè)項(xiàng)目的數(shù)據(jù)庫的命名進(jìn)行討論,定義表的屬性的數(shù)據(jù)類型,表與表之間會(huì)有關(guān)聯(lián),所以有的屬性的類型與長度必須定義一致,這樣訪問數(shù)據(jù)庫時(shí)才不會(huì)出錯(cuò)。如果一開始不將這些步驟統(tǒng)一下來的話,就會(huì)給后面的編程帶來一系列的問題。
 
    整個(gè)一周的項(xiàng)目,第一天我們就對(duì)項(xiàng)目的數(shù)據(jù)庫以及數(shù)據(jù)表有了初步的建立,然后后面還有許多模塊需要分工,當(dāng)然,有些具體的模塊需要完成的功能,都還不甚清楚,因此我們第一天就針對(duì)這個(gè)web項(xiàng)目做了一個(gè)簡單的Django框架的搭建,以及前期項(xiàng)目比較依賴的登錄注冊(cè)部分給完善了出來。
    整個(gè)項(xiàng)目包含了有:購物車,商品列表頁,商品詳情頁,訂單頁面,支付頁面,個(gè)人用戶信息完善頁面,首頁的完善展示和一些小功能,然而我們組有5個(gè)人呢,我有身為組長,其中最重要的一部分,商品數(shù)據(jù)的獲取部分就是由我來做的。
    從第二天開始,我們就開始按照各自的分工開始寫自己的項(xiàng)目了,但是,一旦開始些項(xiàng)目之后,隨之而來的各種問題就出現(xiàn)了,例如商品列表頁面需要一些基礎(chǔ)的數(shù)據(jù)部分,這些數(shù)據(jù)是需要我來爬取,具體的商品需要分類,這些商品類型也是需要我首先爬取一部分基礎(chǔ)的測(cè)試數(shù)據(jù)的,還有一部分商品詳情頁的內(nèi)容也是需要我先爬取一部分基礎(chǔ)測(cè)試數(shù)據(jù)的,因此,我就開始了我的基礎(chǔ)測(cè)試數(shù)據(jù)的爬取。
    我選擇的是爬蟲,因此為了起初為了效率,我是選擇的比較高效率的scrapy框架來爬取數(shù)據(jù)的,但是,當(dāng)寫了一段時(shí)間代碼之后,發(fā)現(xiàn)自己對(duì)著一套框架并不熟悉,底層封裝的各種代碼,的用途都不是很熟悉,感覺就是寫代碼根本就是不可控制的,這就很難受,幾經(jīng)猶豫,最終我轉(zhuǎn)回了基本的requests模塊,雖說比較基礎(chǔ),但也還沒到了urllib2的那種程度,因此寫起來也就比較得心應(yīng)手了,同時(shí)感覺可控制性也比較強(qiáng),一天下來,商品列表的爬取代碼也寫的差不多了,到了爬取數(shù)據(jù)的時(shí)候終于還是出了不少問題。
    比如,再匹配頁面數(shù)據(jù)的時(shí)候,我選擇的是使用Xpath來匹配頁面數(shù)據(jù),明明在網(wǎng)頁上使用的xpath查詢工具能夠匹配到數(shù)據(jù),可是寫在代碼里面就是匹配不到數(shù)據(jù),這個(gè)問題一直困擾了,我很長時(shí)間,直到我上網(wǎng)百度之后,才發(fā)現(xiàn),有些問題還是自己的問題,當(dāng)順利解決之后,最終還是選擇了使用正則與Xpath的混合使用完成了商品類型列表的爬取部分。當(dāng)然,這也是我第二天完成了自己爬取組內(nèi)基礎(chǔ)測(cè)試數(shù)據(jù)部分的爬取。
    由于我寫的是爬蟲,當(dāng)項(xiàng)目的數(shù)據(jù)模型類基本定下來之后,就只需要關(guān)心自己的數(shù)據(jù)問題與數(shù)據(jù)庫的數(shù)據(jù)的對(duì)應(yīng)問題就可以了,可是,身為項(xiàng)目小組中的組長,我還是要肩負(fù)一部分的責(zé)任的,一天下來,組內(nèi)成員也積累了不少問題,比如,白天在代碼同步的時(shí)候,總會(huì)有些人因?yàn)樵谔峤恢皼]有更新,其他人再更新的時(shí)候,就會(huì)莫名的有一部分代碼被刪掉,這些都是更行代碼不同步的問題,當(dāng)然,其他問題也在討論的時(shí)候得到了一一的解決。
    到了第三天,真正需要完整的爬取整站的數(shù)據(jù)的時(shí)候,終于還是出了不少問題,例如:這次我們的模板是個(gè)全英文的電商網(wǎng)站模板,因此,我在爬取國內(nèi)網(wǎng)站的中文數(shù)據(jù),放在一塊就會(huì)顯得非常的不倫不類的感覺,在幾經(jīng)權(quán)衡之下,我選擇了爬取國外同樣的一個(gè)大型電商網(wǎng)站。
    又經(jīng)過了一天的奮斗之后,寫完了一套代碼,問題總是在不經(jīng)意間到來,由于爬的是國外網(wǎng)站的數(shù)據(jù),因此爬取數(shù)據(jù)的時(shí)候,效率就異常的低,幾乎是兩三秒爬取一條的商品數(shù)據(jù),然而整站的數(shù)據(jù)算下來幾乎能達(dá)到40000條數(shù)據(jù),這樣肯定是不行的,何況還要保存,入庫,如果整個(gè)爬下來之后再入庫肯定是不行的,首先內(nèi)存就會(huì)不支持,因此,不得已我就考慮會(huì)不會(huì)是我的代碼的性能問題。
    于是乎,又接下來的一天我就對(duì)代碼做了大量的修改,完全改成了多進(jìn)程多線程式的操作,可是結(jié)果仍不盡如人意,效率不見提升,反而又降低了不少,經(jīng)過跟組員門的討論之后,考慮應(yīng)該是數(shù)據(jù)量是固定的,多線程爬取的話,就會(huì)造成并發(fā)量過大,同時(shí)發(fā)送的請(qǐng)求量占用了大量的帶寬,導(dǎo)致了下行數(shù)據(jù)的速度非常緩慢。
    不得已,我又對(duì)代碼做了大量的修改,于是乎,第三個(gè)版本就是,單純的雙進(jìn)程,一個(gè)寫入數(shù)據(jù),一個(gè)爬取數(shù)據(jù),這樣下來,效率倒也還好,但是也就跟剛開始差不多,就這樣爬取了一整天,期間跟其他組員共同完成了許多其他難以解決的問題。
    問題的出現(xiàn)總是不可避免的,出現(xiàn)了就要解決,這次的問題就是,爬了整天的數(shù)據(jù),到最后,一直只是寫入,卻并沒有保存,因此到了最后需要加快進(jìn)度,于是就又一次修改代碼,在爬取數(shù)據(jù) 的時(shí)候,沒爬取一類自動(dòng)保存一次,當(dāng)然,為了不重復(fù)爬取,同時(shí)增加了指紋集合的功能,這次總算能有一部分?jǐn)?shù)據(jù)了。
    當(dāng)然,最后肯定不能就這樣草草結(jié)束,項(xiàng)目還并不完整,結(jié)束以后,一些細(xì)節(jié)以及數(shù)據(jù),仍然需要完成。總體來說,在此次項(xiàng)目中,我們小組雖說經(jīng)歷了各種困難,但我們都憑借各種途徑解決掉了,增加了項(xiàng)目協(xié)同開發(fā)的經(jīng)驗(yàn)的同時(shí),我也覺得這就是一種自我提升的手段,相信對(duì)以后自己的工作中會(huì)有很大的用處的。
主站蜘蛛池模板: 深圳办公室装修,办公楼/写字楼装修设计,一级资质 - ADD写艺 | Safety light curtain|Belt Sway Switches|Pull Rope Switch|ultrasonic flaw detector-Shandong Zhuoxin Machinery Co., Ltd | 2025福建平潭岛旅游攻略|蓝眼泪,景点,住宿攻略-趣平潭网 | 聚天冬氨酸,亚氨基二琥珀酸四钠,PASP,IDS - 远联化工 | 气胀轴|气涨轴|安全夹头|安全卡盘|伺服纠偏系统厂家-天机传动 | 2025福建平潭岛旅游攻略|蓝眼泪,景点,住宿攻略-趣平潭网 | 电脑刺绣_绣花厂家_绣花章仔_织唛厂家-[源欣刺绣]潮牌刺绣打版定制绣花加工厂家 | 天一线缆邯郸有限公司_煤矿用电缆厂家_矿用光缆厂家_矿用控制电缆_矿用通信电缆-天一线缆邯郸有限公司 | 南京试剂|化学试剂|分析试剂|实验试剂|cas号查询-专业60年试剂销售企业 | BAUER减速机|ROSSI-MERSEN熔断器-APTECH调压阀-上海爱泽工业设备有限公司 | 西安耀程造价培训机构_工程预算实训_广联达实作实操培训 | 防水套管-柔性防水套管-刚性防水套管-上海执品管件有限公司 | 阴离子_阳离子聚丙烯酰胺厂家_聚合氯化铝价格_水处理絮凝剂_巩义市江源净水材料有限公司 | 金属抛光机-磁悬浮抛光机-磁力研磨机-磁力清洗机 - 苏州冠古科技 | 伟秀电气有限公司-10kv高低压开关柜-高低压配电柜-中置柜-充气柜-欧式箱变-高压真空断路器厂家 | 气动绞车,山东气动绞车,气动绞车厂家-烟台博海石油机械有限公司 气动隔膜泵厂家-温州永嘉定远泵阀有限公司 | 纸塑分离机-纸塑分离清洗机设备-压力筛-碎浆机厂家金双联环保 | 招商帮-一站式网络营销服务|互联网整合营销|网络推广代运营|信息流推广|招商帮企业招商好帮手|搜索营销推广|短视视频营销推广 | 智慧消防-消防物联网系统云平台| 沈阳楼承板_彩钢板_压型钢板厂家-辽宁中盛绿建钢品股份有限公司 轴承振动测量仪电箱-轴承测振动仪器-测试仪厂家-杭州居易电气 | 锥形螺带干燥机(新型耙式干燥机)百科-常州丰能干燥工程 | 四川职高信息网-初高中、大专、职业技术学校招生信息网 | 四川成都干燥设备_回转筒干燥机_脉冲除尘器_输送设备_热风炉_成都川工星科机电设备有限公司 | 深圳市源和塑胶电子有限公司-首页| 胃口福饺子加盟官网_新鲜现包饺子云吞加盟 - 【胃口福唯一官网】 | 沈阳激光机-沈阳喷码机-沈阳光纤激光打标机-沈阳co2激光打标机 | 数显恒温培养摇床-卧式/台式恒温培养摇床|朗越仪器 | 自动钻孔机-全自动数控钻孔机生产厂家-多米(广东)智能装备有限公司 | PSI渗透压仪,TPS酸度计,美国CHAI PCR仪,渗透压仪厂家_价格,微生物快速检测仪-华泰和合(北京)商贸有限公司 | 纸张环压仪-纸张平滑度仪-杭州纸邦自动化技术有限公司 | 气体热式流量计-定量控制流量计(空气流量计厂家)-湖北南控仪表科技有限公司 | 蔬菜配送公司|蔬菜配送中心|食材配送|饭堂配送|食堂配送-首宏公司 | 伺服电机_直流伺服_交流伺服_DD马达_拓达官方网站 | 心得体会网_心得体会格式范文模板 | 臭氧灭菌箱-油桶加热箱-原料桶加热融化烘箱-南京腾阳干燥设备厂 臭氧发生器_臭氧消毒机 - 【同林品牌 实力厂家】 | 聚合氯化铝-碱式氯化铝-聚合硫酸铁-聚氯化铝铁生产厂家多少钱一吨-聚丙烯酰胺价格_河南浩博净水材料有限公司 | 全自动翻转振荡器-浸出式水平振荡器厂家-土壤干燥箱价格-常州普天仪器 | 广州云仓代发-昊哥云仓专业电商仓储托管外包代发货服务 | 首页-瓜尔胶系列-化工单体系列-油田压裂助剂-瓜尔胶厂家-山东广浦生物科技有限公司 | 帽子厂家_帽子工厂_帽子定做_义乌帽厂_帽厂_制帽厂 | 抓斗式清污机|螺杆式|卷扬式启闭机|底轴驱动钢坝|污水处理闸门-方源水利机械 |