Powershell 通过BING 搜索

简介:

豆子喜欢看小说 但是很多小说网页的爬虫很不给力,更新不及时。本来想看看Powershell有没有类似Python scarpy的能力,结果很失望,不过意外的发现很多搜索引擎都提供了API 可以通过PowerShell直接调用。


下面以微软的BING为例。

首先需要在azure的datamarket申请一个账号

https://datamarket.azure.com/dataset/bing/search#terms


用windows live账号登录,然后选择第一个就行了,这个每个月可以免费查询5000次,做个测试够用了。


wKiom1dOGEqjP8UTAAV4VrnT2l4676.png


切换到My Account ->My Data,这里可以直接使用一个在线版的API

wKioL1dOGm-Tep6mAADb_8671G0405.png


比如说,我可以搜索不同的内容,网页,图像,视频,新闻等等~


注意有个Primary Account Key, 这个就是我的主账号,调用API的时候需要通过这个ID来验证的

wKiom1dOGXWQ-fcOAAKIDEfYVME358.png


下面看看怎么在PowerShell里面调用。

我在网上搜索了一些,大部分是旧版的语法和例子,具体的语法也语焉不详 要不然就是一个链接直接执行MSDN,这个对于非专业的码农来说很难找到合适的例子,幸好找到一篇参考文章

http://www.powershelladmin.com/wiki/Accessing_the_Bing_Search_API_v2_using_PowerShell


首先根据主账号生成对应的access token, 大概可以参考这个链接

https://msdn.microsoft.com/en-AU/library/azure/dn798668.aspx#ManuallyCreateToken


然后比着上面那个GUI的自动生成的query格式写个function转换成需要的语法结构,因为他的返回值可以是xml或者json,因此直接用invoke-restmethod 调用就行了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$Key  '2rNmeyElCeWRJ1DLvRl5ReJ0l85R/klsdjlskfs'  #这个ID我改了一下,不是真的  
$Base64KeyBytes  [byte[]]  [Text.Encoding] ::ASCII.GetBytes( "ignored:$Key" )
$Base64Key  [Convert] ::ToBase64String( $Base64KeyBytes )
 
function  Get-BingQuery  {
     param ( [string[]]  $Query )
     Add-Type  -Assembly System.Web
     $Query  '%27'  + (( $Query  | %{  [Web.HttpUtility] ::UrlEncode( $_ ) }) -join  '+' ) +  '%27'
     # Return the proper string.
     $Query
}
$QueryString  Get-BingQuery  'music'
$Uri  'https://api.datamarket.azure.com/Bing/Search/Web?$format=json&$top=5&Query='  $QueryString
$Results  Invoke-RestMethod  -Uri  $Uri  -Headers @{ Authorization =  "Basic $Base64Key"  }
$Results .d.results | Select Title, Description, DisplayUrl, Url | fl

结果如下:

wKiom1dOHjWgGLk7AACPTEAKVeA424.png

成功






本文转自 beanxyz 51CTO博客,原文链接:http://blog.51cto.com/beanxyz/1785044,如需转载请自行联系原作者

目录
打赏
0
0
0
0
235
分享
相关文章
百度搜索:蓝易云【Ubuntu命令使用方法大全】
请注意,以上仅是Ubuntu中一小部分常用命令的简要说明。要深入了解和学习Ubuntu命令,请参考Ubuntu官方文档、在线教程和书籍资源。熟练掌握常用的命令对于在Ubuntu系统中进行日常管理和开发任务至关重要。
101 3
谷歌搜索的正确打开方式
谷歌搜索作为世界第一大搜索引擎绝对是我们必不可少的搜索资料的法宝。 不过,有小伙伴总是抱怨其不好用 那么,不妨跟着我学习一下打开Google的正确方式
209 0
Metasploit -- Shodan搜索
Metasploit -- Shodan搜索
114 0
10 个使用 Google 搜索的小技巧
最近 Twitter 上有一篇介绍 Google 搜索技巧的帖子,觉得非常实用,所以分享给大家,原帖子地址放在文末了。
234 0
10 个使用 Google 搜索的小技巧