「Spider」爬取A壇資源鏈接

嗯……之前用Scrapy寫過一個,并且成功爬了下來星岗,奈何效率低下而且配置蛋疼,今天在網(wǎng)易云課堂看到不錯的教程戒洼,用他現(xiàn)成的代碼改了下俏橘,竟也運行成功,而且效率高了不少施逾。在此Mark下敷矫,方便以后參考。

因為論壇限制搜索時間在一年以內(nèi)汉额,為了方便本地查找資源曹仗,因此目標為保存所有的專輯及鏈接到一個HTML中。

思路很簡單蠕搜,首先打開網(wǎng)頁怎茫,篩選需要抓取的數(shù)據(jù)(鏈接、標題)妓灌,保存瀏覽器的Cookies及User-Agent到一個Dict里轨蛤,用requests庫加上之前的User-Agent下載網(wǎng)頁,使用BeautifunSoup解析后虫埂,調試CSS Selector到能夠準確指向所需信息祥山,然后將專輯及對應的鏈接分別放置在一個Dict里,處理輸出即可掉伏。

from bs4 import BeautifulSoup
import requests
import time

#定義需要爬取的頁面及headers
url = 'https://hostname/bbs/thread.php?fid=fid&page=1'
urls = ['https://hostname/bbs/thread.php?fid=fid&page={}'.format(str(i)) for i in range(start,end,step)]
headers = {
    'User-Agent':'',
    'Cookie':''
}

#爬取專輯信息
def getAlbumInfo(url,data=None):
    wb_data = requests.get(url,headers=headers)
    time.sleep(4)
    soup = BeautifulSoup(wb_data.text,'lxml')
    titles    = soup.select('tr.t_one > td > h3 > a')
    links     = soup.select('tr.t_one > td > h3 > a')
    data = []
    if data == []:
        for titles,links in zip(titles,links):
            datas = {
                'title'  :titles.get_text(),
                'link'  :links.get('href'),
                }
            data.append(datas)
    print(data)
    return data

#遍歷爬取結果及輸出為HTML鏈接
def dataProcessAndWriteToFile(result):
    for links in result:
        url = '<a '+'href=https://hostname/bbs/'+str(links['link'])+'>'+str(links['title'])+'</a>'+'</br>'
        print(url)
        f = open('output.html','a',encoding='utf-8')
        f.write(url)
        f.close()

#執(zhí)行
for url in urls:
    current = getAlbumInfo(url)
    dataProcessAndWriteToFile(current)
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末缝呕,一起剝皮案震驚了整個濱河市澳窑,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌供常,老刑警劉巖摊聋,帶你破解...
    沈念sama閱讀 218,941評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異栈暇,居然都是意外死亡麻裁,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評論 3 395
  • 文/潘曉璐 我一進店門源祈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來煎源,“玉大人,你說我怎么就攤上這事新博⌒较Γ” “怎么了?”我有些...
    開封第一講書人閱讀 165,345評論 0 356
  • 文/不壞的土叔 我叫張陵赫悄,是天一觀的道長原献。 經(jīng)常有香客問我,道長埂淮,這世上最難降的妖魔是什么姑隅? 我笑而不...
    開封第一講書人閱讀 58,851評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮倔撞,結果婚禮上讲仰,老公的妹妹穿的比我還像新娘。我一直安慰自己痪蝇,他們只是感情好鄙陡,可當我...
    茶點故事閱讀 67,868評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著躏啰,像睡著了一般趁矾。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上给僵,一...
    開封第一講書人閱讀 51,688評論 1 305
  • 那天毫捣,我揣著相機與錄音,去河邊找鬼帝际。 笑死蔓同,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的蹲诀。 我是一名探鬼主播斑粱,決...
    沈念sama閱讀 40,414評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼脯爪!你這毒婦竟也來了则北?” 一聲冷哼從身側響起蹋宦,我...
    開封第一講書人閱讀 39,319評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎咒锻,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體守屉,經(jīng)...
    沈念sama閱讀 45,775評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡惑艇,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了拇泛。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片滨巴。...
    茶點故事閱讀 40,096評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖俺叭,靈堂內(nèi)的尸體忽然破棺而出恭取,到底是詐尸還是另有隱情,我是刑警寧澤熄守,帶...
    沈念sama閱讀 35,789評論 5 346
  • 正文 年R本政府宣布蜈垮,位于F島的核電站,受9級特大地震影響裕照,放射性物質發(fā)生泄漏攒发。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,437評論 3 331
  • 文/蒙蒙 一晋南、第九天 我趴在偏房一處隱蔽的房頂上張望惠猿。 院中可真熱鬧,春花似錦负间、人聲如沸偶妖。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至翼抠,卻和暖如春玩祟,著一層夾襖步出監(jiān)牢的瞬間腹缩,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評論 1 271
  • 我被黑心中介騙來泰國打工空扎, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留藏鹊,地道東北人。 一個月前我還...
    沈念sama閱讀 48,308評論 3 372
  • 正文 我出身青樓转锈,卻偏偏與公主長得像盘寡,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子撮慨,可洞房花燭夜當晚...
    茶點故事閱讀 45,037評論 2 355

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