西安做网站_西安网站建设公司_西安网页制作_西安网页设计_西安网站制作设计公司

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 8464|回复: 0

百度指数批量查询器

[复制链接]
发表于 2012-6-8 11:43:33 | 显示全部楼层 |阅读模式
     园子里的高手们,在园里潜水2年多了,今天出来透透气。这也是第二篇往首页推的东西,发个自制小工具帖,高手们就见笑了~~
     昨天,老大让我采集一些数据。然后,在那些数据里面找出百度指数比较高的,做专题。4000+的数据啊。一个一个去百度上找,那得找到猴年马月。因为是程序员,所以对这种重复性的东西,肯定不干的。
    因为百度指数应该也是一个比较出名的东西,应该会有一些类似批量查询的工具吧。所以,开始到网上找,“百度指数 批量查询 ”,还真有,没想到遍地都是,就尝试着下载了几个来看看。。结果,让我惊讶的是,这种工具,竟然都是收费的,最多一次就让你一次查询5-6个,所以,4000的数据量,肯定也是不允许的。
     当时我就纳闷许久,就只是一个查询工具而已,做起来的话,应该也就是模拟请求,然后,分析数据,找到想要的。这样的工具用得着收费吗?尝试了好几个之后,最终放弃了。花那些时间去找,自己写都写出来了,而且还能写得完善,且是自己需要的功能。
    所以就开始动手。不过百度也还真是可恶,偏偏是我想要的那个数据的地方给加密了,加密了。并且还不止一层。不过,这些都难不倒我,因为之前有过WEB外挂(黄金时代辅助程序)的制作经验,这些东西马上就迎刃而解了,当然,工具是必不可少的,比如,
1.HTTPwatch,用这个抓请求,如果不用这个的话,你根本都不知道请求的地址是哪个,或者是找这个地址就得花上大半天的。
2.Mtracer,正则表达式测试工具,这个的话,对于新手是必不可少的,好处有1,强大的正则表达式工具,2,高亮关键字。有时候,自己写出来的正则表达式,自认为完美,可就是出错,找不到。就是因为其中包括被忽略的关键字。如果高亮了的话,一般还是能看到的。
    好了。在这里,就可以开始做模拟WEB请求类似的程序了,像什么农场,停车,还有(你知道的)。。。这些东西绰绰有余了。
    哦,忘记了一个最重要的东西,那就是模拟请求的类, 现在网上应该有N多的教程了。我贴了自己专用的吧。
  1. 复制代码

  2. public class HttpClient : WebClient
  3. {
  4. // Cookie 容器
  5. private CookieContainer cookieContainer;

  6. /**/
  7. /// <summary>
  8. /// 创建一个新的 WebClient 实例。
  9. /// </summary>
  10. public HttpClient()
  11. {
  12. this.cookieContainer = new CookieContainer();
  13. ServicePointManager.Expect100Continue = false;
  14. }

  15. /**/
  16. /// <summary>
  17. /// 创建一个新的 WebClient 实例。
  18. /// </summary>
  19. /// <param name="cookie">Cookie 容器</param>
  20. public HttpClient(CookieContainer cookies)
  21. {
  22. this.cookieContainer = cookies;
  23. }

  24. /**/
  25. /// <summary>
  26. /// Cookie 容器
  27. /// </summary>
  28. public CookieContainer Cookies
  29. {
  30. get { return this.cookieContainer; }
  31. set { this.cookieContainer = value; }
  32. }

  33. /**/
  34. /// <summary>
  35. /// 返回带有 Cookie 的 HttpWebRequest。
  36. /// </summary>
  37. /// <param name="address"></param>
  38. /// <returns></returns>
  39. protected override WebRequest GetWebRequest(Uri address)
  40. {
  41. WebRequest request = base.GetWebRequest(address);
  42. if (request is HttpWebRequest)
  43. {
  44. HttpWebRequest httpRequest = request as HttpWebRequest;
  45. httpRequest.UserAgent = "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; QQPinyinSetup 620; QQPinyin 730; CIBA; .NET CLR 2.0.50727; InfoPath.2)";
  46. httpRequest.Accept = "text/javascript, text/html, application/xml, text/xml, */*";
  47. httpRequest.CookieContainer = cookieContainer;
  48. }
  49. return request;
  50. }
  51. }
复制代码


   这个应该是比较完善的。对于大多数网站,用这个应该是足够了,可能某些需要些一些特定的设置。这里我就解释不清了。一般的网站只会做user-agent判断,再厉害一点就是refer判断。其他的就不太清楚了。
    上午,这个东西已经属于成品了。贴个图让大家过过眼,是一个很小的工具。高手就别喷了。
     
呵呵,高手见笑了~~确实是很简单哈。。 鉴于现在网上现存的是收费的,暂时这个就不发布了,要的话,可以单发。
功能挺简单的,就一个导入,导出。并且导出,还没弄完善,比如要导出excel,或者SQL脚本啊,不过,导出可以导出指定的列。以\t结束,也就是一个TAB键,就算复制一下到excel也是可以的,所以暂时就没弄那么多了。怀着急切的心情,跟大家分享分享一下。

西安网站建设 | 西安做网站 —— 剑锋所指 所向披靡!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|手机版|Archiver|西安网站建设

GMT+8, 2024-4-25 13:32 , Processed in 0.043604 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表