WPF数据爬取小工具-某宝推广位批量生成,及订单爬取 记:接单最痛一次的感悟

项目由来:上月闲来无事接到接到一个单子,自动登录 X宝平台,然后重定向到指定页面批量生成推广位信息;与此同时自动定时同步订单数据到需求提供方的Java服务。

当然期间遇到一个小小的问题就是界面样式的问题,起初使用的winform开发,但是样式,你懂的,所以后来索性直接使用wpf.

先声明:这里只做经验分享,不提供其他支持,毕竟,,,不安全。

  

1.首先看下我们的项目界面

WPF数据爬取小工具-某宝推广位批量生成,及订单爬取 记:接单最痛一次的感悟

 

WPF数据爬取小工具-某宝推广位批量生成,及订单爬取 记:接单最痛一次的感悟

WPF数据爬取小工具-某宝推广位批量生成,及订单爬取 记:接单最痛一次的感悟

说明:三张图分别是 登录,登录后主页面,和订单页面

  (登录页面)界面整体就划分上中下尾四个部分,种下部分的灰色是一个webBrowser.可以很好地帮助我们解决重定向之后,通过重定向页面获取cookie,这个后面回说。

    当然如果你觉得这个灰色很突兀,你可设置高宽为0,那么界面将会很简洁。我之所以显示出来是因为初次访问该网站的时候,会出现验证的问题,需要手动点击以及拖拽拼图。

  (主页面) 依旧是头部上部中部下部尾部,

  (订单页面)很明了。

  界面插件:MetroWindow,请自行百度,谢谢。

2.主要逻辑

  2.1.主页面内容

       首先我们分析下,一般情况下,我们在登录某平台时候,如果使用第三方授权登陆之后,地址中会有一个redirectUrl,即授权成功之后从定向的页面,那么此时我们要获取的cokkie肯定是从重定向之后的页面获取

   所以,这里也是一样的,我们这里的登录实现也是通过一个带有redirectUrl的登陆地址模拟post。

       首先,我们在窗体初始化的时候,在webBrowser中初始化我们的登录页面,也就是 灰色部分。然后通过webbrowser获取相关dom元素,赋值,模拟登陆按钮的提交事件,代码如下

     webBrowser代码:

       在窗体的load事件中初始化,其中的 LoginUrl 就是我们的 带有重定向地址的 登录地址;eg:https://login.xxbao.com/login?redirectURL=www.baidu.com

webBrowser.Navigate(LoginUrl);

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wsxjfj.html