2010-01-23 47 views

回答

1

Nutch是一個足夠體面的抓取工具,但您必須對索引數據進行自己的分析。

+0

我很好 - 謝謝保羅:) – 2010-01-23 13:36:12

2

你也可以在R中使用類似RCurlXML(獲得博客文章)和igraph(對於SNA)的組合來做到這一點。您需要解析HTML以獲取所有鏈接,並且XML包可以輕鬆處理這種處理。

看一看this related question的SNA分析指標,雖然這是一個很大的研究領域。

+0

謝謝謝恩, 感謝您的想法和鏈接。 我會再看看它們 - 再次感謝! – 2010-01-29 11:29:18

3

通過「映射」我不確定您是否指的是將原始數據映射到正統圖數據結構或將該數據結構映射到美學庫以便呈現它。如果是前者,那麼我想這是一個直接的問題,寫一個函數來翻譯原始數據(w/r/t,其鏈接到哪個博客以及多少)到一個圖形數據結構中,比如一個鄰接矩陣。映射這樣的收視數據結構可以做這樣的:

library(Rgraphviz) 
# create an synthetic adjacency matrix for 10 blogs 
M = sapply(rep(10, 10), function(x){sample(c(0, 1), 10, T, c(0.7, 0.3))}) 
colnames(M) = paste(rep("b", 10), 1:10, sep="-") 
rownames(M) = colnames(M) 
# 0's down the main diagonal (eliminate self-edges) 
diag(M) = rep(0, 10) 
# call the graphviz constructor, passing in adjacency matrix 
M_gr = new("graphAM", adjMat=M, edgemode="directed") 
g1 = layoutGraph(M_gr) 
# (optional) aesthetic parameters for nodes & edges 
graph.par(list(edges = list(col="gray", lty="dashed", lwd=1), 
      nodes = list(col="midnightblue", shape="ellipse", 
       textCol="darkred", fill="#B0B7C6", fontsize=11, 
       lty="dotted", lwd=2))) 
# call the device driver 
png(file='somefilename.png', width=600, height=460, res=128) 
# call the plot function 
renderGraph(g1) 
# kill the device 
dev.off() 

alt text http://img13.imageshack.us/img13/7683/bloggraph.png

如果你想顯示不只是連接,但在強度這些連接,例如,數量,或者頻率從一個博客鏈接到另一個博客,您可以通過單獨設置線寬來設置線寬,例如通過參數'lwd'(我已經爲所有邊設置了2),另一個選項是按線型顯示連接強度,例如虛線,虛線,實心,顏色)。當然,這些邊權重必須在鄰接矩陣中設置,這很簡單 - 而不是用'0'/'1'來表示'未連接'/連接,你可能會想使用'0'/'整數'。

+0

謝謝Doug, 非常有幫助的線索 - 我會再問一次,我會更深入地探討它們。 – 2010-01-29 11:28:31

0

爲了記錄,我強烈推薦Python中的機械化庫 - 它使您可以快速構建自己的個性化抓取工具/抓取工具。

相關問題