æœç´¢å¼•æ“Žä¸ç½‘络爬虫的设计分æž
下é¢ç®€å•ä»‹ç»ä¸€ä¸‹æœç´¢å¼•æ“Žçš„机器爬虫的制作和一些基本è¦æ³¨æ„的事项。
说的简å•æ˜“æ‡‚ä¸€äº›ï¼Œç½‘ç»œçˆ¬è™«è·Ÿä½ ä½¿ç”¨çš„ã€–ç¦»çº¿é˜…è¯»ã€—å·¥å…·å·®ä¸å¤šã€‚说离线,其实还是è¦è·Ÿç½‘络è”结,å¦åˆ™æ€Žä¹ˆæŠ“东西下æ¥ï¼Ÿé‚£ä¹ˆä¸åŒçš„地方在哪里?
1】 网络爬虫高度å¯é…置性。
2】 网络爬虫å¯ä»¥è§£æžæŠ“到的网页里的链接
3】 网络爬虫有简å•çš„å˜å‚¨é…ç½®
4】 ç½‘ç»œçˆ¬è™«æ‹¥æœ‰æ™ºèƒ½çš„æ ¹æ®ç½‘页更新分æžåŠŸèƒ½
5】 网络爬虫的效率相当的高
那么ä¾æ®ç‰¹å¾ï¼Œå…¶å®žä¹Ÿå°±æ˜¯è¦æ±‚了,如何设计爬虫呢?è¦æ³¨æ„哪些æ¥éª¤å‘¢ï¼Ÿ
1】 url çš„é历和纪录
这点 larbin åšå¾—éžå¸¸çš„好,其实对于urlçš„é历是很简å•çš„,例如:
cat [what you got]| tr \" \\n | gawk '{print $2}' | pcregrep ^http://
å°±å¯ä»¥å¾—到一个所由的 url 列表
2】多进程 VS 多线程
å„有优点了,现在一å°æ™®é€šçš„PC 例如 booso.com 一天å¯ä»¥è½»æ¾çˆ¬ä¸‹5个Gçš„æ•°æ®ã€‚大约20万网页。
3】时间更新控制
最傻的åšæ³•æ˜¯æ²¡æœ‰æ—¶é—´æ›´æ–°æƒé‡ï¼Œä¸€é€šçš„爬,回头å†ä¸€é€šçš„爬。
通常在下一次爬的的数æ®è¦è·Ÿä¸Šä¸€æ¬¡è¿›è¡Œæ¯”较,如果连ç»5次都没有å˜åŒ–,那么将爬这个网页的时间间隔扩大1å€ã€‚
如果一个网页在连ç»5次爬å–的时候都有更新,那么将设置的爬å–时间缩çŸä¸ºåŽŸæ¥çš„1ï¼2。
注æ„,效率是å–胜的关键之一。
4】爬的深度是多少呢?
çœ‹æƒ…å†µäº†ã€‚å¦‚æžœä½ æ¯”è¾ƒç‰›ï¼Œæœ‰å‡ ä¸‡å°æœåŠ¡å™¨åšç½‘络爬虫,我åŠæ‚¨è·³è¿‡è¿™ä¸€ç‚¹ã€‚
å¦‚æžœä½ åŒæˆ‘ä¸€æ ·åªæœ‰ä¸€å°æœåŠ¡å™¨åšç½‘ç»œçˆ¬è™«ï¼Œé‚£ä¹ˆè¿™æ ·ä¸€ä¸ªç»Ÿè®¡æ‚¨åº”è¯¥çŸ¥é“:
网页深度:网页个数:网页é‡è¦ç¨‹åº¦
0 : 1 : : 10
1 :20 : :8
2: :600: :5
3: :2000: :2
4 above: 6000: ä¸€èˆ¬æ— æ³•è®¡ç®—
好了,爬到三级就差ä¸å¤šäº†ï¼Œå†æ·±å…¥ä¸€æ˜¯æ•°æ®é‡æ‰©å¤§äº†3ï¼4å€ï¼ŒäºŒæ˜¯é‡è¦åº¦ç¡®ä¸‹é™äº†è®¸å¤šï¼Œè¿™å«åšâ€œç§ä¸‹çš„是龙ç§ï¼Œæ”¶èŽ·çš„是跳蚤。
5】爬虫一般ä¸ä¹‹é—´çˆ¬å¯¹æ–¹çš„网页,一般是通过一个Proxy出去,这个proxyæœ‰ç¼“è§£åŽ‹åŠ›çš„åŠŸèƒ½ï¼Œå› ä¸ºå½“å¯¹æ–¹çš„ç½‘é¡µæ²¡æœ‰æ›´æ–°çš„æ—¶å€™ï¼Œåªè¦æ‹¿åˆ° header çš„ tagå°±å¯ä»¥äº†ï¼Œæ²¡æœ‰å¿…è¦å…¨éƒ¨ä¼ 输一次了,å¯ä»¥å¤§å¤§èŠ‚约网络带宽。
apache webserver里é¢çºªå½•çš„ 304 一般就是被cache的了。
6】请有空的时候照看一下robots.txt
7】å˜å‚¨ç»“构。
这个人人è§æ™ºï¼Œgoogle 用 gfs ç³»ç»Ÿï¼Œå¦‚æžœä½ æœ‰7ï¼8å°æœåŠ¡å™¨ï¼Œæˆ‘åŠä½ 用NFS系统,è¦æ˜¯ä½ 有70ï¼80个æœåŠ¡å™¨çš„è¯æˆ‘å»ºè®®ä½ ç”¨afs 系统,è¦æ˜¯ä½ åªæœ‰ä¸€å°æœåŠ¡å™¨ï¼Œé‚£ä¹ˆéšä¾¿ã€‚
给一个代ç 片æ–,是我写的新闻æœç´¢å¼•æ“Žæ˜¯å¦‚何进行数æ®å˜å‚¨çš„:
NAME=`echo $URL |perl -p -e 's/([^\w\-\.\@])/$1 eq "\n" ? "\n":sprintf("%%%2.2x",ord($1))/eg'`
mkdir -p $AUTHOR
newscrawl.pl $URL --user-agent="news.booso.com+(+http://booso.com)" -outfile=$AUTHOR/$NAME
以上转载的是一篇关于æœç´¢å¼•æ“Žç½‘络爬虫(å³æœç´¢å¼•æ“Žèœ˜è››ç¨‹åºï¼‰çš„设计分æžçš„æ–‡ç« ï¼Œä»‹ç»äº†ä¸€äº›èœ˜è››è®¾è®¡çš„常识,这些信æ¯å¯¹SEO都很有帮助,特别是注æ„ä»¥ä¸‹å‡ å¥ï¼š
1.通常在下一次爬的的数æ®è¦è·Ÿä¸Šä¸€æ¬¡è¿›è¡Œæ¯”较,如果连ç»5次都没有å˜åŒ–,那么将爬这个网页的时间间隔扩大1å€ï¼Œå¦‚果一个网页在连ç»5次爬å–的时候都有更新,那么将设置的爬å–时间缩çŸä¸ºåŽŸæ¥çš„1ï¼2。
网页更新频度严é‡å½±å“ç€æœç´¢å¼•æ“Žèœ˜è››ç¨‹åº¦å¯¹ç½‘站的爬行,爬å–次数越多æ„味ç€ç½‘é¡µæ”¶å½•å‡ çŽ‡ä¼šè¶Šå¤§ã€æ”¶å½•æ•°é‡è¶Šå¤šï¼Œæ”¶å½•æ˜¯SEO优化最基础的一个环节。
2.好了,爬到三级就差ä¸å¤šäº†ï¼Œå†æ·±å…¥ä¸€æ˜¯æ•°æ®é‡æ‰©å¤§äº†3ï¼4å€ï¼ŒäºŒæ˜¯é‡è¦åº¦ç¡®ä¸‹é™äº†è®¸å¤šï¼Œè¿™å«åšâ€œç§ä¸‹çš„是龙ç§ï¼Œæ”¶èŽ·çš„是跳蚤。
å°½é‡å°†ç½‘ç«™ä¿æŒåœ¨ä¸‰çº§ç›®å½•å†…,深层次的网页会给æœç´¢å¼•æ“Žå¸¦æ¥å¾ˆå¤§çš„压力,当然,我想Google有足够的æœåŠ¡å™¨æ¥æ‰¿æ‹…这些压力,但从侧é¢æ¥è¯´ï¼Œ3层目录下的网页被抓å–åŠæ›´æ–°çš„频度è¦ä½Žå¾ˆå¤šã€‚å‰é¢ï¼Œæˆ‘说过,è¦æƒ³åŠžæ³•ä½¿ç½‘站物ç†ç»“构和逻辑结构å»åˆï¼Œè¿™ä½“现于URLçš„è‰¯å¥½è®¾è®¡ï¼ŒçŽ°åœ¨ä½ å¯ä»¥æ£€æŸ¥ä¸‹å‰å°ç”Ÿæˆçš„é™æ€ç½‘é¡µçš„å®žé™…ç›®å½•æœ‰å‡ å±‚ï¼Œè€ƒè™‘æ˜¯å¦å¯ä»¥ä¼˜åŒ–。
关于网站逻辑结构和URL设计,请å‚考“网站内部链接优化是SEO的第一è¦ç´ â€å’Œâ€œäºŒçº§åŸŸå与一级目录之间该如何选择?â€
最后编辑: 郝聪 编辑于2008/02/19 16:12
说的简å•æ˜“æ‡‚ä¸€äº›ï¼Œç½‘ç»œçˆ¬è™«è·Ÿä½ ä½¿ç”¨çš„ã€–ç¦»çº¿é˜…è¯»ã€—å·¥å…·å·®ä¸å¤šã€‚说离线,其实还是è¦è·Ÿç½‘络è”结,å¦åˆ™æ€Žä¹ˆæŠ“东西下æ¥ï¼Ÿé‚£ä¹ˆä¸åŒçš„地方在哪里?
1】 网络爬虫高度å¯é…置性。
2】 网络爬虫å¯ä»¥è§£æžæŠ“到的网页里的链接
3】 网络爬虫有简å•çš„å˜å‚¨é…ç½®
4】 ç½‘ç»œçˆ¬è™«æ‹¥æœ‰æ™ºèƒ½çš„æ ¹æ®ç½‘页更新分æžåŠŸèƒ½
5】 网络爬虫的效率相当的高
那么ä¾æ®ç‰¹å¾ï¼Œå…¶å®žä¹Ÿå°±æ˜¯è¦æ±‚了,如何设计爬虫呢?è¦æ³¨æ„哪些æ¥éª¤å‘¢ï¼Ÿ
1】 url çš„é历和纪录
这点 larbin åšå¾—éžå¸¸çš„好,其实对于urlçš„é历是很简å•çš„,例如:
cat [what you got]| tr \" \\n | gawk '{print $2}' | pcregrep ^http://
å°±å¯ä»¥å¾—到一个所由的 url 列表
2】多进程 VS 多线程
å„有优点了,现在一å°æ™®é€šçš„PC 例如 booso.com 一天å¯ä»¥è½»æ¾çˆ¬ä¸‹5个Gçš„æ•°æ®ã€‚大约20万网页。
3】时间更新控制
最傻的åšæ³•æ˜¯æ²¡æœ‰æ—¶é—´æ›´æ–°æƒé‡ï¼Œä¸€é€šçš„爬,回头å†ä¸€é€šçš„爬。
通常在下一次爬的的数æ®è¦è·Ÿä¸Šä¸€æ¬¡è¿›è¡Œæ¯”较,如果连ç»5次都没有å˜åŒ–,那么将爬这个网页的时间间隔扩大1å€ã€‚
如果一个网页在连ç»5次爬å–的时候都有更新,那么将设置的爬å–时间缩çŸä¸ºåŽŸæ¥çš„1ï¼2。
注æ„,效率是å–胜的关键之一。
4】爬的深度是多少呢?
çœ‹æƒ…å†µäº†ã€‚å¦‚æžœä½ æ¯”è¾ƒç‰›ï¼Œæœ‰å‡ ä¸‡å°æœåŠ¡å™¨åšç½‘络爬虫,我åŠæ‚¨è·³è¿‡è¿™ä¸€ç‚¹ã€‚
å¦‚æžœä½ åŒæˆ‘ä¸€æ ·åªæœ‰ä¸€å°æœåŠ¡å™¨åšç½‘ç»œçˆ¬è™«ï¼Œé‚£ä¹ˆè¿™æ ·ä¸€ä¸ªç»Ÿè®¡æ‚¨åº”è¯¥çŸ¥é“:
网页深度:网页个数:网页é‡è¦ç¨‹åº¦
0 : 1 : : 10
1 :20 : :8
2: :600: :5
3: :2000: :2
4 above: 6000: ä¸€èˆ¬æ— æ³•è®¡ç®—
好了,爬到三级就差ä¸å¤šäº†ï¼Œå†æ·±å…¥ä¸€æ˜¯æ•°æ®é‡æ‰©å¤§äº†3ï¼4å€ï¼ŒäºŒæ˜¯é‡è¦åº¦ç¡®ä¸‹é™äº†è®¸å¤šï¼Œè¿™å«åšâ€œç§ä¸‹çš„是龙ç§ï¼Œæ”¶èŽ·çš„是跳蚤。
5】爬虫一般ä¸ä¹‹é—´çˆ¬å¯¹æ–¹çš„网页,一般是通过一个Proxy出去,这个proxyæœ‰ç¼“è§£åŽ‹åŠ›çš„åŠŸèƒ½ï¼Œå› ä¸ºå½“å¯¹æ–¹çš„ç½‘é¡µæ²¡æœ‰æ›´æ–°çš„æ—¶å€™ï¼Œåªè¦æ‹¿åˆ° header çš„ tagå°±å¯ä»¥äº†ï¼Œæ²¡æœ‰å¿…è¦å…¨éƒ¨ä¼ 输一次了,å¯ä»¥å¤§å¤§èŠ‚约网络带宽。
apache webserver里é¢çºªå½•çš„ 304 一般就是被cache的了。
6】请有空的时候照看一下robots.txt
7】å˜å‚¨ç»“构。
这个人人è§æ™ºï¼Œgoogle 用 gfs ç³»ç»Ÿï¼Œå¦‚æžœä½ æœ‰7ï¼8å°æœåŠ¡å™¨ï¼Œæˆ‘åŠä½ 用NFS系统,è¦æ˜¯ä½ 有70ï¼80个æœåŠ¡å™¨çš„è¯æˆ‘å»ºè®®ä½ ç”¨afs 系统,è¦æ˜¯ä½ åªæœ‰ä¸€å°æœåŠ¡å™¨ï¼Œé‚£ä¹ˆéšä¾¿ã€‚
给一个代ç 片æ–,是我写的新闻æœç´¢å¼•æ“Žæ˜¯å¦‚何进行数æ®å˜å‚¨çš„:
NAME=`echo $URL |perl -p -e 's/([^\w\-\.\@])/$1 eq "\n" ? "\n":sprintf("%%%2.2x",ord($1))/eg'`
mkdir -p $AUTHOR
newscrawl.pl $URL --user-agent="news.booso.com+(+http://booso.com)" -outfile=$AUTHOR/$NAME
以上转载的是一篇关于æœç´¢å¼•æ“Žç½‘络爬虫(å³æœç´¢å¼•æ“Žèœ˜è››ç¨‹åºï¼‰çš„设计分æžçš„æ–‡ç« ï¼Œä»‹ç»äº†ä¸€äº›èœ˜è››è®¾è®¡çš„常识,这些信æ¯å¯¹SEO都很有帮助,特别是注æ„ä»¥ä¸‹å‡ å¥ï¼š
1.通常在下一次爬的的数æ®è¦è·Ÿä¸Šä¸€æ¬¡è¿›è¡Œæ¯”较,如果连ç»5次都没有å˜åŒ–,那么将爬这个网页的时间间隔扩大1å€ï¼Œå¦‚果一个网页在连ç»5次爬å–的时候都有更新,那么将设置的爬å–时间缩çŸä¸ºåŽŸæ¥çš„1ï¼2。
网页更新频度严é‡å½±å“ç€æœç´¢å¼•æ“Žèœ˜è››ç¨‹åº¦å¯¹ç½‘站的爬行,爬å–次数越多æ„味ç€ç½‘é¡µæ”¶å½•å‡ çŽ‡ä¼šè¶Šå¤§ã€æ”¶å½•æ•°é‡è¶Šå¤šï¼Œæ”¶å½•æ˜¯SEO优化最基础的一个环节。
2.好了,爬到三级就差ä¸å¤šäº†ï¼Œå†æ·±å…¥ä¸€æ˜¯æ•°æ®é‡æ‰©å¤§äº†3ï¼4å€ï¼ŒäºŒæ˜¯é‡è¦åº¦ç¡®ä¸‹é™äº†è®¸å¤šï¼Œè¿™å«åšâ€œç§ä¸‹çš„是龙ç§ï¼Œæ”¶èŽ·çš„是跳蚤。
å°½é‡å°†ç½‘ç«™ä¿æŒåœ¨ä¸‰çº§ç›®å½•å†…,深层次的网页会给æœç´¢å¼•æ“Žå¸¦æ¥å¾ˆå¤§çš„压力,当然,我想Google有足够的æœåŠ¡å™¨æ¥æ‰¿æ‹…这些压力,但从侧é¢æ¥è¯´ï¼Œ3层目录下的网页被抓å–åŠæ›´æ–°çš„频度è¦ä½Žå¾ˆå¤šã€‚å‰é¢ï¼Œæˆ‘说过,è¦æƒ³åŠžæ³•ä½¿ç½‘站物ç†ç»“构和逻辑结构å»åˆï¼Œè¿™ä½“现于URLçš„è‰¯å¥½è®¾è®¡ï¼ŒçŽ°åœ¨ä½ å¯ä»¥æ£€æŸ¥ä¸‹å‰å°ç”Ÿæˆçš„é™æ€ç½‘é¡µçš„å®žé™…ç›®å½•æœ‰å‡ å±‚ï¼Œè€ƒè™‘æ˜¯å¦å¯ä»¥ä¼˜åŒ–。
关于网站逻辑结构和URL设计,请å‚考“网站内部链接优化是SEO的第一è¦ç´ â€å’Œâ€œäºŒçº§åŸŸå与一级目录之间该如何选择?â€
引用
作者: 黑色梦ä¸
原载: 黑色梦ä¸çš„SEOåšå®¢
版æƒæ‰€æœ‰ã€‚转载时请以链接形å¼æ³¨æ˜Žä½œè€…和原始出处åŠæœ¬å£°æ˜Žã€‚
原载: 黑色梦ä¸çš„SEOåšå®¢
版æƒæ‰€æœ‰ã€‚转载时请以链接形å¼æ³¨æ˜Žä½œè€…和原始出处åŠæœ¬å£°æ˜Žã€‚
相关日志
SEO项目分æžåŠè¿ä½œæµç¨‹
第五届Netconcepts SEO排行榜大会演讲PPT分享
百度æœç´¢ç»“æžœå›¾æ–‡æ ‡è¯†è§„åˆ™åˆ†æž
Flash网页SEO特殊优化ç–ç•¥
Wordpress SEOæ’件
æœæœSoSoæœç´¢å¼•æ“Žä¼˜åŒ–SEO规范
ã€SEO必备】百度蜘蛛IP段大全与æƒé‡è¯´æ˜Ž
社会化è´ç‰©åˆ†äº«ç½‘ç«™SEOç–ç•¥ç ”ç©¶
百度站长平å°â€œå¤–链工具â€ä¸Žâ€œæœç´¢å…³é”®è¯æŸ¥è¯¢â€åŠŸèƒ½è¯„测
从Bing(必应)SEO技巧ä¸åˆ†æžæœªæ¥ç½‘站优化的å‘展趋势
SEO项目分æžåŠè¿ä½œæµç¨‹
第五届Netconcepts SEO排行榜大会演讲PPT分享
百度æœç´¢ç»“æžœå›¾æ–‡æ ‡è¯†è§„åˆ™åˆ†æž
Flash网页SEO特殊优化ç–ç•¥
Wordpress SEOæ’件
æœæœSoSoæœç´¢å¼•æ“Žä¼˜åŒ–SEO规范
ã€SEO必备】百度蜘蛛IP段大全与æƒé‡è¯´æ˜Ž
社会化è´ç‰©åˆ†äº«ç½‘ç«™SEOç–ç•¥ç ”ç©¶
百度站长平å°â€œå¤–链工具â€ä¸Žâ€œæœç´¢å…³é”®è¯æŸ¥è¯¢â€åŠŸèƒ½è¯„测
从Bing(必应)SEO技巧ä¸åˆ†æžæœªæ¥ç½‘站优化的å‘展趋势
最后编辑: 郝聪 编辑于2008/02/19 16:12