搜索引擎對(duì)網(wǎng)站的收錄,會(huì)影響到網(wǎng)站SEO,而目前沒找到什么好的工具來統(tǒng)計(jì)被收錄的情況,也不會(huì)其他程序來寫爬出,將就著用sas來寫(實(shí)在大材小用了)。
提取的主要字段:
-URL---頁面Title---收錄更新時(shí)間---排列順序---URL分類-
下面是代碼(后面一部分可直接忽略):
*========================================================================
百度收錄情況統(tǒng)計(jì):
1.根據(jù)百度搜索結(jié)果源代碼,提取其中搜索結(jié)果;
2.再統(tǒng)計(jì)相關(guān)頁面的收錄情況,及新增和刪除頁面情況;
3.再以文本文件形式發(fā)郵件。
-創(chuàng)建時(shí)間---創(chuàng)建人--------------
2011-08-25 ****
-更新時(shí)間---更新人---說明-----
2011-09-14 **** 頁面類型處理上使用正則表達(dá)式函數(shù)處理
2011-09-28 **** 解決頭一天未提取收錄,比較新增和丟棄的頁面比較日期至最近一次提取的數(shù)據(jù)
-說明---
本程序用于提取百度對(duì)網(wǎng)站的收錄情況統(tǒng)計(jì),為SEO提供參考,如果網(wǎng)站主要頁面(如產(chǎn)品頁)未被收錄,
需要尋找原因(例如頁面相似度太高)以改進(jìn)。
========================================================================;
options mprint mlogic symbolgen;
%let basicn=100;
%macro _shoulu(website=,dslib=,dsout=);
%*--------------------------------
宏變量:website 格式y(tǒng)oursite.com,百度查詢參數(shù)為"site:yoursite.com"
dsout 格式&dslib..yoursite_yymmdd,yymmdd為每次抓取百度搜索結(jié)果的日期
說明: pn,rn為百度查詢參數(shù),與SAS宏變量無關(guān)
*--------------------------------;
filename baidu url "http://www.mysas.net";
%*抓取收錄的總數(shù)量,用于控制讀取的頁面數(shù);
data _null_;
infile baidu length=len lrecl=5000;
input _t1 $varying5000. len;
if substr(_t1,1,13)='<p id="page">';
total=compress(scan(scan(_t1,-3,">"),-2,"<"),"找到相關(guān)結(jié)果個(gè)約,");
call symput("total",total);
run;
%put total number searched=&total;
%let n=%eval(&total/&basicn+1);
%put n=&n;
%*利用循環(huán)讀取百度查詢結(jié)果的下一頁;
%do i=1 %to &n;
%if &i=1 %then %let pnum=0;
%else %let pnum=%eval(%eval(&i-1)*&basicn);
%put pn=&pnum;
%*每次查詢結(jié)果設(shè)為100(參數(shù)rn=100);
filename baidu url "http://www.mysas.net";
......
剩余源程序如下: