百度 site inurl
时间:2008-08-31 来源:ubuntuer
百度总喜欢整url哈~~~~,个人感觉c的字符串处理能力实在不敢恭维!grep+sed+awk偶尔cut sort uniq太好用了,自己也是现在刚开始的~~
百度上使用 site inurl 语法查询吗 ? 如果还没有的话可以试一下
如输入 site:www.baidu.com inurl:news
则会搜出所有在 www.baidu.com 站点上的包含 "news" 子串的 url 。
现在我们有两份数据,一份是 site_inurl.txt 一份是 url.txt
site_inurl.txt 中每行是一个 site inurl 语法组成的查询串, url.txt 中保存的是 url 列表。
你能否在 url 列表中找出所有能被 site_inurl.txt 中的查询串检索到的 url?
如 site_inurl.txt 内容如下:
site:www.baidu.com inurl:/more
site:zhidao.baidu.com inurl:/browse/
site:www.sina.com.cn inurl:www20041223am
url.txt 内容如下:
http://www.baidu.com/more/
http://www.baidu.com/guding/more.html
http://www.baidu.com/events/20060105/photomore.html
http://hi.baidu.com/browse/
http://hi.baidu.com/baidu/
http://www.sina.com.cn/head/www20021123am.shtml
http://www.sina.com.cn/head/www20041223am.shtml
则你的程序运行完输出的结果应该为:
http://www.baidu.com/more/
http://www.baidu.com/guding/more.html
http://www.sina.com.cn/head/www20041223am.shtml
本想把自己解题的思路一点一点写下来的,无奈实在没那个激情,与我解出来了似乎也就万事大吉了,这题还整了挺长时间的,主要是shell的变量问题.
while read -r line
do set $(echo $line | awk -F"[: ]" '{print $2,$4}')
grep "$1.*$2" url.txt (ps:这里的$1,$2就是set的,与上面的完全不同^_^)
done<inurl.txt
Spider抓回一些url:
代码:
http://www.xxx/forum-45-1.html
http://www.xxx/forum-1-1.html
http://www.xxx/forum-45-2.html
http://www.xxx/forum-45-3.html
http://www.xxx/forum-45-4.html
http://www.xxx/forum-45-5.html
http://www.xxx/forum-45-6.html
http://www.xxx/forum-45-7.html
http://www.xxx/forum-45-8.html
http://www.xxx/forum-45-9.html
http://www.xxx/forum-45-10.html
http://www.xxx/forum-45-85.html
这些url存在一个叫forum.txt的方本文件里, 在这里我请教两个问题:
http://www.xxx/forum-45-1.html
http://www.xxx/forum-1-1.html
http://www.xxx/forum-45-2.html
http://www.xxx/forum-45-3.html
http://www.xxx/forum-45-4.html
http://www.xxx/forum-45-5.html
http://www.xxx/forum-45-6.html
http://www.xxx/forum-45-7.html
http://www.xxx/forum-45-8.html
http://www.xxx/forum-45-9.html
http://www.xxx/forum-45-10.html
http://www.xxx/forum-45-85.html
sort -t- -k3 -n file
echo forum-45-85.html | cut -d- -f3 | cut -d. -f1
sort -t- -k2 -k3 -n file(k2为主关键字,k3次关键字)
代码都挺简单的,但想出来还是不容易的,奖励下自己~~~
百度上使用 site inurl 语法查询吗 ? 如果还没有的话可以试一下
如输入 site:www.baidu.com inurl:news
则会搜出所有在 www.baidu.com 站点上的包含 "news" 子串的 url 。
现在我们有两份数据,一份是 site_inurl.txt 一份是 url.txt
site_inurl.txt 中每行是一个 site inurl 语法组成的查询串, url.txt 中保存的是 url 列表。
你能否在 url 列表中找出所有能被 site_inurl.txt 中的查询串检索到的 url?
如 site_inurl.txt 内容如下:
site:www.baidu.com inurl:/more
site:zhidao.baidu.com inurl:/browse/
site:www.sina.com.cn inurl:www20041223am
url.txt 内容如下:
http://www.baidu.com/more/
http://www.baidu.com/guding/more.html
http://www.baidu.com/events/20060105/photomore.html
http://hi.baidu.com/browse/
http://hi.baidu.com/baidu/
http://www.sina.com.cn/head/www20021123am.shtml
http://www.sina.com.cn/head/www20041223am.shtml
则你的程序运行完输出的结果应该为:
http://www.baidu.com/more/
http://www.baidu.com/guding/more.html
http://www.sina.com.cn/head/www20041223am.shtml
本想把自己解题的思路一点一点写下来的,无奈实在没那个激情,与我解出来了似乎也就万事大吉了,这题还整了挺长时间的,主要是shell的变量问题.
while read -r line
do set $(echo $line | awk -F"[: ]" '{print $2,$4}')
grep "$1.*$2" url.txt (ps:这里的$1,$2就是set的,与上面的完全不同^_^)
done<inurl.txt
Spider抓回一些url:
代码:
http://www.xxx/forum-45-1.html
http://www.xxx/forum-1-1.html
http://www.xxx/forum-45-2.html
http://www.xxx/forum-45-3.html
http://www.xxx/forum-45-4.html
http://www.xxx/forum-45-5.html
http://www.xxx/forum-45-6.html
http://www.xxx/forum-45-7.html
http://www.xxx/forum-45-8.html
http://www.xxx/forum-45-9.html
http://www.xxx/forum-45-10.html
http://www.xxx/forum-45-85.html
这些url存在一个叫forum.txt的方本文件里, 在这里我请教两个问题:
http://www.xxx/forum-45-1.html
http://www.xxx/forum-1-1.html
http://www.xxx/forum-45-2.html
http://www.xxx/forum-45-3.html
http://www.xxx/forum-45-4.html
http://www.xxx/forum-45-5.html
http://www.xxx/forum-45-6.html
http://www.xxx/forum-45-7.html
http://www.xxx/forum-45-8.html
http://www.xxx/forum-45-9.html
http://www.xxx/forum-45-10.html
http://www.xxx/forum-45-85.html
sort -t- -k3 -n file
echo forum-45-85.html | cut -d- -f3 | cut -d. -f1
sort -t- -k2 -k3 -n file(k2为主关键字,k3次关键字)
代码都挺简单的,但想出来还是不容易的,奖励下自己~~~
相关阅读 更多 +