多進(jìn)程爬取數(shù)據(jù)

有了之前的爬蟲(chóng)知識(shí)蛾娶,相對(duì)比較簡(jiǎn)單。爬取趕集網(wǎng)二手物品信息胎许。
1辜窑、先得到主目錄鏈接

from bs4 import BeautifulSoup
#import requests
import urllib2
#import re

start_url="http://sh.ganji.com/wu/"

def get_channel_list(url):
    web_data=urllib2.urlopen(url).read()
    #web_data = requests.get(start_url)只能讀取部分?jǐn)?shù)據(jù)
    soup = BeautifulSoup(web_data, 'lxml')
    contents=soup.select('#wrapper > div.content > div > div > dl > dt > a')
    #contents是list不能直接get 
    for content in contents:
        name=content.get('href').split('/')[1]
        channel_list='http://sh.ganji.com/{}/'.format(name)
        print(channel_list)
       
get_channel_list(start_url)   

2牙勘、再得到不同類(lèi)的全部鏈接和爬取內(nèi)容

from bs4 import BeautifulSoup
#import requests
import urllib2
#import re
import time
import pymongo

client=pymongo.MongoClient('localhost',27017)
ceshi=client['ceshi']
url_list=ceshi['url_list']
info=ceshi['info']

#t_url="http://zhuanzhuan.ganji.com/detail/788638496047104004z.shtml?from=pc&source=ganji&cate=&cateurl="

def get_url_list(channel,page):
    if page==1:
        url=channel
    else:
        url='{}o{}/'.format(channel,str(page))
    #page格式
    web_data=urllib2.urlopen(url).read()
    time.sleep(2)
    soup = BeautifulSoup(web_data, 'lxml')
    if soup.find('td','t'):
        links=soup.select('#infolist > div.infocon > table > tbody > tr > td.t > a')
        for link in links:
            url=link.get('href').split('?')[0]
            url_list.insert_one[{'url':url}]
            print(url)
    else:
        pass
       

def get_info(url):
    web_data=urllib2.urlopen(url).read()
    soup = BeautifulSoup(web_data, 'lxml')
    name=soup.select('div.box_left_top > h1')[0].text
    price=soup.select('div.price_li > span > i')[0].text
    district=soup.select('div.palce_li > span > i')
   
    info.insert_one[{'name':name,'price':price,'district':district}]
    print[{'name':name,'price':price,'district':district}]

3放钦、多進(jìn)程進(jìn)行爬取

from multiprocessing import Pool
from channel_list import channel_list 
from get_data_from_url import get_url_list

def get_all_date(channel):
    for num in range(1,101):
        get_url_list(channel,num)
        
if __name__ == "__main__":
    pool = Pool()
    #分到pool里自動(dòng)選擇進(jìn)程數(shù)
    pool.map(get_all_date,channel_list.split())
    #map的用法,后面一個(gè)一個(gè)帶入進(jìn)前面

4颓屑、計(jì)數(shù)

import time
from get_data_from_url import url_list

while True:
    print(url_list.find().count())
    time.sleep(3)

學(xué)習(xí)總結(jié):
1揪惦、創(chuàng)建數(shù)據(jù)庫(kù)丹擎,數(shù)據(jù)庫(kù)中插入數(shù)據(jù)蒂培;
2护戳、requests只能讀取大部分代碼垂睬,而urllib2可以讀全驹饺,不知道為什么赏壹;
3蝌借、多進(jìn)程進(jìn)行爬取數(shù)據(jù)菩佑。
4稍坯、擴(kuò)展庫(kù)安裝pip install pymongo。

                                                                      2017年第1周
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市遣疯,隨后出現(xiàn)的幾起案子缠犀,更是在濱河造成了極大的恐慌聪舒,老刑警劉巖箱残,帶你破解...
    沈念sama閱讀 207,248評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件燎悍,死亡現(xiàn)場(chǎng)離奇詭異谈山,居然都是意外死亡奏路,警方通過(guò)查閱死者的電腦和手機(jī)鸽粉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門(mén)触机,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)威兜,“玉大人,你說(shuō)我怎么就攤上這事约谈±庥眨” “怎么了迈勋?”我有些...
    開(kāi)封第一講書(shū)人閱讀 153,443評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵重归,是天一觀的道長(zhǎng)鼻吮。 經(jīng)常有香客問(wèn)我椎木,道長(zhǎng)香椎,這世上最難降的妖魔是什么士鸥? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,475評(píng)論 1 279
  • 正文 為了忘掉前任烤礁,我火速辦了婚禮脚仔,結(jié)果婚禮上鲤脏,老公的妹妹穿的比我還像新娘猎醇。我一直安慰自己硫嘶,他們只是感情好沦疾,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,458評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布哮塞。 她就那樣靜靜地躺著忆畅,像睡著了一般家凯。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上改衩,一...
    開(kāi)封第一講書(shū)人閱讀 49,185評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音橄镜,去河邊找鬼洽胶。 笑死裆馒,一個(gè)胖子當(dāng)著我的面吹牛喷好,可吹牛的內(nèi)容都是我干的梗搅。 我是一名探鬼主播无切,決...
    沈念sama閱讀 38,451評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼掘托,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼烫映!你這毒婦竟也來(lái)了噩峦?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,112評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎祝辣,沒(méi)想到半個(gè)月后蝙斜,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體澎胡,經(jīng)...
    沈念sama閱讀 43,609評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡稚伍,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,083評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了受楼。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片艳汽。...
    茶點(diǎn)故事閱讀 38,163評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡糟趾,死狀恐怖义郑,靈堂內(nèi)的尸體忽然破棺而出非驮,到底是詐尸還是另有隱情雏赦,我是刑警寧澤,帶...
    沈念sama閱讀 33,803評(píng)論 4 323
  • 正文 年R本政府宣布戒洼,位于F島的核電站圈浇,受9級(jí)特大地震影響磷蜀,放射性物質(zhì)發(fā)生泄漏百炬。R本人自食惡果不足惜剖踊,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,357評(píng)論 3 307
  • 文/蒙蒙 一虫埂、第九天 我趴在偏房一處隱蔽的房頂上張望掉伏。 院中可真熱鬧澳窑,春花似錦摊聋、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,357評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)歇僧。三九已至锋拖,卻和暖如春祸轮,著一層夾襖步出監(jiān)牢的瞬間适袜,已是汗流浹背痪蝇。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,590評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留耙册,地道東北人详拙。 一個(gè)月前我還...
    沈念sama閱讀 45,636評(píng)論 2 355
  • 正文 我出身青樓饶辙,卻偏偏與公主長(zhǎng)得像弃揽,于是被迫代替她去往敵國(guó)和親矿微。 傳聞我的和親對(duì)象是個(gè)殘疾皇子涌矢,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,925評(píng)論 2 344

推薦閱讀更多精彩內(nèi)容

  • 編譯環(huán)境:python v3.5.0, mac osx 10.11.4 python爬蟲(chóng)基礎(chǔ)知識(shí): Python...
    擲骰子的求閱讀 16,564評(píng)論 11 101
  • 首先列舉一下本人總結(jié)的相關(guān)文章方篮,這些覆蓋了入門(mén)網(wǎng)絡(luò)爬蟲(chóng)需要的基本概念和技巧:寧哥的小站-網(wǎng)絡(luò)爬蟲(chóng)當(dāng)我們?cè)跒g覽器中輸...
    Python程序媛閱讀 294評(píng)論 0 0
  • 我想明白了為什么自己沒(méi)時(shí)間泰偿,因?yàn)橐惶煊猩衔缦挛缤砩向诳澹衔缟险n裕照,下午有事调塌,晚上完成習(xí)慣,再就是熬夜了负间,想明白這一點(diǎn)政溃,...
    良辰美LiangChen閱讀 180評(píng)論 0 0
  • 一朵嬌小黃色的花 想開(kāi)遍每一寸土地 好說(shuō)出心里滿溢的愛(ài)情 可惜它太小了 日日夜夜的風(fēng)雨打碎了它的夢(mèng) 細(xì)小的花瓣落了...
    怪新來(lái)白發(fā)閱讀 179評(píng)論 0 1
  • 上午參加禪修學(xué)習(xí),有三位師兄專門(mén)來(lái)分享臨終關(guān)懷愤诱。自己看到有生以來(lái)最多的人臨死時(shí)的照片捐友。 一位師兄分享爸爸在剛剛往生...
    德敏閱讀 332評(píng)論 1 2