首页 > 代码库 > grep命令和curl命令的使用方法

grep命令和curl命令的使用方法

今天看了汪海写的python爬虫教程,说实话看不懂。。。于是就用bash下的工具自己开始写了一个抓取糗事百科的糗事的脚本,期间搜索到了grep和curl命令的一些使用技巧。

 

grep命令,使用grep命令来进行文本的通配,一般只是显示匹配的行,但是使用以下几个参数就可以显示上下文了:

-C [num]    #显示匹配行的上下各num行-A [num]    #显示匹配行的后num行-B [num]    #显示匹配行的前num行

 

curl这个下载工具,或者已经算不上是下载工具了,因为curl过于强大了,主要用途并不限于下载,这里之介绍它的一种技巧。

因为curl默认下载的数据是直接输出到终端的,可以加上-o file 选项将数据输出到文件中去,譬如下载一个图片文件,直接输出就是乱码,那么我们可以将其输出到文件,后缀取图片的后缀就好,一般是png或是jpg。

 

一个curl的小技巧是可以使用-A选项将下载器伪装成浏览器,可以自定义参数来伪装。。(wget也可以,但是参数太繁琐,不过也是可以的,但是默认)

 

伪装参数数示例如下:

curl -A "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)" URL

 

此时可以伪装成浏览器绕过网站的筛选,譬如来下载糗事百科首页,因为糗事百科可能定义了筛选(好像专业名叫防盗链?),用curl下载的数据总是缺少一部分不是真正浏览器下载的页面(可以参观它的文件),因此使用伪装就可已完整的下下载界面了。

 

防盗链的方式有很多,但是糗事百科还没有那么复杂,这些东西结合起来足够抓取了。

 

有空我会研究一下wget的伪装和抓取的。。

grep命令和curl命令的使用方法