1. 程式人生 > >用Scrapy抓取豆瓣小組資料(一)

用Scrapy抓取豆瓣小組資料(一)

最近在coursera.org(線上學習平臺)上學SNA(Social Network Analysis,社交網路分析)。有興趣的同學可以去看一眼:https://class.coursera.org/sna-002/,課程講的很有意思,等回頭我上完全部課程打算再寫下詳細總結和思考。

為什麼要抓取豆瓣小組資料?

  課程要做一個帶程式設計的final project,大概內容就是自己找一個網路資料集,然後按照課程中提供的方法進行分析。其實最難的部分是找資料,兩種方法:自己抓,或者是找現成的。對於後者,國內有個叫資料堂的資料分享網站做的不錯,上面有豆瓣,淘寶,微博等各種資料,不過有些資料需要收費;國外有個叫

Konect的網站專注於複雜網路資料。

  看了一圈現成的資料都不太滿意,決定自己抓取了。目標鎖定豆瓣小組,打算分析小組之間的互相聯絡。

如何用Scrapy抓取網頁?

1,先建立一個scrapy專案,專案名稱doubanscrapy startproject douban

1 scrapy startproject douban

會生成一個專案目錄,內部結構大概如下:

01 douban/
02 scrapy.cfg  ==> project的配置檔案,一般不用改
03 douban/
04 __init__.py
05 items.py  ==> 定義抓取的資料結構
06 pipelines.py
07 settings.py ==》 專案的具體配置,需要更改
08 spiders/    ==》 這個是定義蜘蛛機器人的目錄
09 __init__.py
10 ...
2, 在item.py中定義要抓取的資料結構:定義了一個DoubanItem,屬性包括name,url, total member number, relative groups, active users。 

定義完DoubanItem後,你就可以在實現蜘蛛機器人的程式碼裡返回DoubanItem的例項,Scrapy會自動序列化並匯出到JSON/XML等。

01 from scrapy.item import Item, Field
02
03 class DoubanItem(Item):

相關推薦

Scrapy豆瓣小組資料

最近在coursera.org(線上學習平臺)上學SNA(Social Network Analysis,社交網路分析)。有興趣的同學可以去看一眼:https://class.coursera.org/sna-002/,課程講的很有意思,等回頭我上完全部課程打算再寫下

Scrapy入門例項(使用Scrapy豆瓣電影top250榜單

專案地址:https://github.com/yuanfuzhi/ScrapyDemo.git 一  Scrapy介紹與安裝 1,  Scrapy介紹 Scrapy是一個為了爬取網站資料,提取結構性資料而編寫的應用框架。可以應用在包括資料探勘,資訊處理或儲存歷史資料等一系列的程式中

一個站點的誕生02--Scrapy數據

項目 selector 默認安裝 找不到 shang foo 術語 替換 產生 假設想抓數據,就須要有爬蟲程序,業內叫crawler或者spider。 有各種語言版本號的開源爬蟲。c++, Java, php,在github上搜一下,以"spider c++"為k

scrapy京東的資料

# -*- coding: utf-8 -*- import scrapy from ..items import JdphoneItem import sys reload(sys) sys.setdefaultencoding("utf-8") class JdSpider(scrapy.Spid

Python朋友圈資料,通過人臉識別全面分析好友!看透朋友圈

微信:一個提供即時通訊服務的應用程式,更是一種生活方式,超過數十億的使用者,越來越多的人選擇使用它來溝通交流。 不知從何時起,我們的生活離不開微信,每天睜開眼的第一件事就是開啟微信,關注著朋友圈裡好友的動態,而朋友圈中或虛或實的狀態更新,似乎都在證明自己的“有趣”,尋找那份

Scrapy的中文字元匯出到csv中出現亂碼

背景 按照這篇文章學些Scrapy框架,爬取豆瓣電影Top250的資訊,將資訊匯入到本地csv檔案時,由於電影名稱是中文,儲存時出現了亂碼。 解決辦法 在setting檔案中加入這樣一行語句: FEED_EXPORT_ENCODING = ‘utf-8-sig’ 儲存se

Fiddler手機APP資料

1.允許遠端連線 2.允許監聽https 3.重啟Fiddler 這步很重要,不要忘了 4.手機配置 用ipconfig命令查詢當前PC的區域網IP 將手機連線上同一個WIFI,並進行設定: iOS手機:設定 >

使用新浪微博官方API微博資料Python版

一、安裝環境 二、一個簡單的例子 # coding=utf-8 from weibo import APIClient import webbrowser # python內建的包 APP_

Scrapy 某家的樓盤資訊

最近想爬點東西,又不想造輪子,就用上了scrapy,順便記錄下自己踩過的坑和都做了些什麼。 使用的軟體版本: ipython 5.1.x scrapy 1.4 準備階段(在動手寫之前,一定要先觀察好標籤位置!): 這裡使用Firefox的外掛firebug對進行頁面

Python3 + Scrapy豆瓣評分資料存入Mysql與MongoDB資料庫。

首先我們先抓包分析一下,可以看到我們想要的每一頁的全部資料都在"article"下。而其中每一部的電影的資料可以看到在"info"下。所以我們只要在info下找到自己的目標資料並想好匹配方法即可,本文使用的是xpath,其實也可以在spiders中匯入pyquery或者Bea

Python selenium爬蟲船舶網站資料動態頁面

很早之前就開始學習爬蟲了,一直想學習爬取動態頁面,正巧工作中需要用到一個船舶資訊的網站,每次都是手動查詢太麻煩了,昨天下午研究了一下午,總算搞透徹了,基本步驟如下: 1、啟動瀏覽器 2、開啟網頁 3、模擬輸入,模擬點選 4、稍等一會(很重要) 5、獲取

Python網路資料----網路爬蟲基礎

The website is the API......(未來的資料都是通過網路來提供的,website本身對爬蟲來講就是自動獲取資料的API)。掌握定向網路資料爬取和網頁解析的基本能力。 ##Requests 庫的使用,此庫是Python公認的優秀的第三方網路爬蟲庫。能夠自動的爬取HTML頁面;自動的

Scrapy前程無憂51job相關職位資訊

Scrapy爬取前程無憂(51job)python職位資訊 開始是想做資料分析的,上網上找教程,看到相關部落格我就跟著做,但是沒資料就只能開始自己爬唄。順便給51job的工作人員提提建議,我爬的時候Scrapy訪問量開到128,relay僅有兩秒,還以為會封ip。沒想到只是改請求頭就

Python下Scrapy和MongoDB構建爬蟲系統1

這篇文章將根據真實的兼職需求編寫一個爬蟲,使用者想要一個Python程式從Stack Overflow抓取資料,獲取新的問題(問題標題和URL)。抓取的資料應當存入MongoDB。值得注意的是,Stack Overflow已經提供了可用於讀取同樣資料的API。但是使用者想要一個

豆瓣電影排行T250的資訊

1.分析 針對所爬去的Url進行分析: 分析網址'?'符號後的引數,第一個引數'start=0',這個代表頁數,‘=0’時代表第一頁,‘=25’代表第二頁,以此類推。 1.1頁面分析 明確要爬取的元素 :排名、名字、導演、評語、評分 1.2 頁面程式碼分析

爬蟲]利用xpath爬豆瓣電影top250

今天學習了一下xpath 感覺功能非常的強大,但是如果不太懂前端的小夥伴們可能比較吃力,建議看一下html的一些語法結構,程式碼如下: #!/usr/bin/env python import re import requests import lxml.html url

Androidsurface直接顯示yuv資料

轉自:http://blog.csdn.net/tung214/article/details/36887041 研究了一段時間Android的surface系統,一直執著地認為所有在surface或者螢幕上顯示的畫面,必須要轉換成RGB才能顯示,yuv資料也要通過顏色

python3 頁面指定資料json

開發十年,就只剩下這套架構體系了! >>>   

EffectiveJava讀書筆記——考慮靜態工廠方法代替構造器

無法 父類 應該 樹結構 對象 如何 log 筆記 工廠類 參考網址:http://blog.csdn.net/mingyunduoshou/article/details/6149758 http:[email protect

UITableView!別再代碼計算行高了

dev count layout 們的 -o @property 感覺 ref 還在 你還在用代碼去計算行高嗎?你不感覺那種方式很low嗎?從今天起,試著做些改變吧! 別給我講你喜歡寫代碼的感覺,你就是要用代碼去計算行高,那我這篇文章不適合你。 在講解復雜內容之前,還是先學