【亲测好用!】shell批量采集百度下拉框关键词
【亲测好用!】shell批量采集百度下拉框关键词
一直想写一篇用shell采集百度下拉框关键词的教程,个人感觉用shell来采集的话速度和效率都会更高一点。因为前面写过一篇用火车头采集百度下拉框关键词的教程,操作步骤稍微多了些,很多朋友看完了仍然不知道怎么做,然后QQ问我,教程都写得很清楚明了,只要对照着来做,一定会成功的。
——————————-2015年5月22日补充——————————-
刚看到小五给了一个可以批量采集百度下拉框的百度接口,简单修改下,已经用shell实现了批量采集,代码如下:
采集单个词测试一下:
curl -s "https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd=seo"|iconv -f gbk -t utf-8|awk -F":" '{print $4}'|grep -oP '(?<=").*?(?=")'|sed 's/,//g'
效果如下图所示:

指定一批母词,批量采集代码:
https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd=$line"|iconv -f gbk -t utf-8|awk -F":" '{print $4}'|grep -oP '(?<=").*?(?=")'|sed 's/,//g';done 效果如下图,如果你的母词很多的话,建议在代码后面加一个重定向命令,将结果实时写入到文件中,这样比较好复制一些。给出完整代码吧:
cat kws.txt|while read line;do curl -s "https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd=$line"|iconv -f gbk -t utf-8|awk -F":" '{print $4}'|grep -oP '(?<=").*?(?=")'|sed 's/,//g';done >ok.txt
结果会实时写入ok.txt文件中。

shell批量采集百度下拉框关键词另一个可用的百度API:
cat kws.txt|while read line;do curl -s http://suggestion.baidu.com/su?wd=$line=$line|iconv -f gbk -t utf-8|grep -oP '(?<=").*?(?=")'|egrep -v "baidu|,";done
效果如下图:

采集效率如下图,217个母词,不到一分钟采集到了416个下拉词,效率如何?

转载请注明:方法SEO顾问 » 【亲测好用!】shell批量采集百度下拉框关键词
【亲测好用!】shell批量采集百度下拉框关键词的更多相关文章
- vue实现百度下拉框
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- Vue.js模拟百度下拉框
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- dedecms首页搜索 添加仿百度下拉框
1:找到uploads/templets/default/head.htm 2: 找到 <input name="q" type="text" clas ...
- angular的跨域(angular百度下拉提示模拟)和angular选项卡
1.angular中$http的服务: $http.get(url,{params:{参数}}).success().error(); $http.post(url,{params:{参数}}).su ...
- 仿百度下拉关键词,和关键词的小demo
自己做项目时用到的仿百度下拉关键词 代码: $(function(){ var oTxt = document.getElementById('search_text'); oTxt.onkeyup ...
- vue的jsonp百度下拉菜单
通过vue的jsonp实现百度下拉菜单的请求,vue的版本是2.9.2 <!DOCTYPE html> <html lang="en"> <head& ...
- vue 树形下拉框 亲测 好用
https://vue-treeselect.js.org/ 顺带说一个开发中使用这个组件遇到的问题,关于回显之后无法修改的问题 找了很长时间 原因是数据类型导致的问题,数组里面应该是数字类型,直接 ...
- jquery 仿百度搜索下拉框的插件
转载地址:http://www.open-open.com/lib/view/open1420624048437.html 今天写了个下拉插件分享出来 效果: , 可以搜素,也可以使用上下键选择匹配出 ...
- 第五章 使用 Bootstrap Typeahead 组件(百度下拉效果)
推荐链接:http://www.cnblogs.com/haogj/p/3376874.html UnderScore官网:http://underscorejs.org/ 参考文档:http://w ...
随机推荐
- 20.custom自定义线程池
自定义线程池 1.若Executors工厂类无法满足需求,可以自己使用工厂类创建线程池,底层都是使用了); ThreadPoolExecutor threadPoolExecutor = new Th ...
- OpenCV学习(6) 文件和Mat之间的数据交换
有时候为了便于调试算法,我们需要从文本文件或二进制文件中读取数据,并把数据放到相应的矩阵中去.我们通常可以通过下面的函数实现. 1.从二进制文件中读取数据. 新建一个txt文 ...
- 在Qt示例项目的C ++ / QML源中的//! [0]的含义是什么?
在Qt示例项目的C ++ / QML源中的//! [0]的含义是什么? 例如: //! [0] GLWidget :: GLWidget(Helper * helper,QWidget * pare ...
- Orchard运用 - 如何隐藏去除某些Meta标记
众所周知,每个系统多多少少都会有一些痕迹或标记之类的东西, 比如默认的Orchard搭建的网站, 如果你查看源代码即可看到类似的代码: <meta content="Orchard&q ...
- hadoop中典型Writable类详解
本文地址:http://www.cnblogs.com/archimedes/p/hadoop-writable.html,转载请注明源地址. Hadoop将很多Writable类归入org.apac ...
- [Grunt] Concatenating Your Javascript with grunt-contrib-concat
Combine serval javascript files together. For angular project, make sure you add angular.min.js firs ...
- 【SSH三大框架】Hibernate基础第五篇:利用Hibernate完毕简单的CRUD操作
这里利用Hibernate操作数据库完毕简单的CRUD操作. 首先,我们须要先写一个javabean: package cn.itcast.domain; import java.util.Date; ...
- CSS兼容性解决方法!important的IE7,Firefox问题
转自:http://www.codesky.net/article/201008/139903.html 1. 首先谈谈!important问题的引起(盒模型问题): 在CSS标准中,一个盒模型包括4 ...
- Google Maps API v2密钥申请以及实现地图定位导航
注意新建项目之前需要安装 google play services 然后导入 通过上图方法导入sdk包下面的一个包: \adt-bundle-windows-x86\sdk\extras\googl ...
- javascript - = 、==、===、!=、!==、&&、||、!
= .==.===.!=.!==.&&.||.! /* * = .==.===.!=.!==.&&.||.! */ var a = 1; var b = 1; var ...