本来是想尝试使用curl模拟post向新浪发送微博,但是试了几次都没有成功。看到一些文章于是想到可以使用powershell模拟IE的动作来做。发现这样做更为简便

1 可以先用IE来自动读取cookie,而不用在代码中直接设置cookie

2 powershell是模拟正常用户的行为,服务器端几乎无法对这种行为进行禁止

3 代码简单,容易进行修改

下面是powershell的代码(运行前先手动使用IE登录微博,并让IE记录用户名和密码,记录cookie)

function NavigateIE($url)
{
    $ie = new-object -com "InternetExplorer.Application";
    $ie.navigate($url);
    #ie.visible=ie.visible=true;
    [System.Threading.Thread]::Sleep(2000);
    return $ie;
}

function FindTag($params)
{
    $ie = $params[0];
    $tagname = $params[1];
    $contain = $params[2];
    $doc = $ie.document;
    $tags = @($doc.getElementsByTagName($tagname));
    foreach($tag in $tags)
    {
        if($tag.outerHTML.contains($contain))
        {
            $sel = $tag;
            break;
        }
    }
    return $sel;
}

$ie = NavigateIE("http://weibo.com/12321");

$talk = FindTag($ie, "textarea", 'id=publish_editor');

$but = FindTag($ie, "span", 'class=bgColorB');

$talk.value = "test";
$but.click();

主要的函数是:NavigateIE和FindTag,一个函数阅读为打开IE,一个函数阅读为找到标签

代码的流程就是:  打开IE -- 找到输入框 -- 填写信息 -- 找到提交按钮 -- 单击提交按钮

很简洁明了

PS:这个代码不是针对新浪微博的行为。只是闲来无事的实验。

个人认为这种方法应该可以使用在为网站的测试人员做模拟测试,因为这个代码操作就是和人的行为操作是完全一致的。能很好的模拟人的行为,也有更强的说服力。但是现在还没遇到实际的情况使用。

本文转自轩脉刃博客园博客,原文链接:http://www.cnblogs.com/yjf512/archive/2011/06/08/2075531.html,如需转载请自行联系原作者

powershell 模拟IE行为相关推荐

  1. 从 CVE-2020-1048 到 CVE-2020-17001:Windows打印机模块中多个提权漏洞分析

     聚焦源代码安全,网罗国内外最新资讯! Windows 打印组件自 Win2000时代就被引入,作为一个"历史悠久"的组件其安全问题也一直广受安全研究人员关注.近期围绕 print ...

  2. 08-Windows Server 2012 R2 会话远程桌面-标准部署-使用PowerShell进行部署2-1

    08-Windows Server 2012 R2 会话远程桌面-标准部署-使用PowerShell进行部署2-1 马博峰 PowerShell一直是微软windows Server产品中重要的一部分 ...

  3. 微软准备开源PowerShell

    近日微软再次在向开源投出橄榄枝, PowerShell是面向Windows和Windows Server的自动化平台和脚本语言,帮助用户简化系统的管理.在纳德拉的带领下微软也逐渐走向开放,根据相关爆料 ...

  4. powershell开源新闻及简介

    作者:PowerShll传教士 问:微软的PowerShell脚本语言已经开源了 ? 答:绝对真的!已经! 问:源码在哪? 答:微软.net源码网站.   http://referencesource ...

  5. 不可阻挡的PowerShell :Red Teamer告诉你如何突破简单的AppLocker策略

    本文讲的是不可阻挡的PowerShell :Red Teamer告诉你如何突破简单的AppLocker策略,从目前的攻击发展趋势来看,攻击者已经比大多数防御者或系统管理员更喜欢使用PowerShell ...

  6. Windows Terminal PowerShell 7 美化

    记录一下有关Windows Terminal的折腾记录. 一.最后的成果图 二.Windows Terminal & PowerShell安装 1.Windows Store 直接搜索进行下载 ...

  7. anaconda prompt和cmd和powershell和anaconda powershell prompt和git bash有什么区别

    anaconda prompt和cmd和powershell和anaconda powershell prompt和git bash有什么区别? anaconda prompt和cmd和powersh ...

  8. 学习自旋电子学的笔记06:“扫参数”批量微磁模拟,ubermag介绍,微磁模拟求助

    文章目录 前言 一."扫参数"进行批量微磁模拟 1."扫参数"的基本技巧 2.使用for命令让Boxsi"扫参数"实现批量化运行 二.一个非 ...

  9. PowerShell : 如何设置输出颜色,Format-Color让黑乎乎的窗口丰富起来

    大家好,我是 IT大厨! 眼下的疫情不容小觑.前几天西安的小伙伴开启了核酸检测模式,昨天就轮到生活所在的片区全员检测.所以还是老实呆在家陪家人和学习吧.不管是不是程序员,学习才是王道. 工作原因写过不 ...

  10. linux卡利系统设置密码,Kail Linux2019.04更新:新增“卧底模式” 模拟Win10界面

    12月3日消息 Kail Linux 通常是从事安全和渗透工作人士喜爱的操作系统,预置的龙徽标桌面也让该操作系统看起来非常独特.然而多数人已经习惯windows 或者macOS 操作系统,因此在办公室 ...

最新文章

  1. 电脑桌面便签小工具_电脑桌面工作任务提醒软件有哪些?多端同步提醒办公软件试试云便签...
  2. Tiny4412开发板 LED灯的控制
  3. TCP/IP详解--第六章
  4. Swift-EasingAnimation
  5. 防爆知识:危险场所划
  6. 我是如何成为算法工程师的,超详细的学习路线
  7. PIC单片机应用开发实践教程(四): MPLAB X IDE Debug
  8. 数值分析-LU三角分解
  9. 高频故障-桌面图标变成白纸图标的恢复方案
  10. Mac系统随笔 | (2) Macbook WiFi共享
  11. mysql数据库怎么导出到excel_mysql数据库表如何导出到excel
  12. 嵌入式ARM设计编程(三) 处理器工作模式
  13. word2013插入excel对象报错_Excel2013中插入对象文件的方法
  14. 点焊机器人焊接超时_机器人点焊自动化 I 附机器人点焊焊接工艺
  15. Idea编译出现[ restartedMain] o.s.b.d.LoggingFailureAnalysisReporter这个问题
  16. 阿里京东拼多多财报季,电商三巨头谁更胜一筹?
  17. 计算机中政治面貌代码,2012年3月计算机等考二级Access考前模拟题(4)
  18. SpringBoot启动流程类图版
  19. 杭电计算机学院复试真题,2020杭州电子科技大学计算机学院考研复试公告
  20. Spring基础概念

热门文章

  1. 使用nginx负载均衡的webservice wsdl访问不到_Nginx 反向代理、负载均衡图文教程,写得太好了!...
  2. ai/ml_十大ML / AI现实世界项目,以增强您的产品组合
  3. linux怎么重载mysql配置命令_【Linux命令】数据库mysql配置命令
  4. android背景差分法,基于android平台的视频运动目标检测系统.pdf
  5. mysql的底层运行原理,【数据库】震惊!!MySQL的底层原理竟然是这样
  6. (VS2013)MFC对话框中用多个按钮创建多个子对话框实现选项卡效果(自己有修改)
  7. Aapache status / apache2ctl status 总是403
  8. kali linux Python开发环境初始化
  9. ZOJ 1010. Area 解题报告
  10. Silverlight实用窍门系列:43.Silverlight从ListBox拖拽图标到另一ListBox