c++ 实现百度自动搜索
void CAttendanceRobotDlg::DocumentCompleteExplorer4(LPDISPATCH pDisp, VARIANT* URL)
{
// TODO: Add your message handler code here
HRESULT hr;
LPUNKNOWN lpUnknown;
LPUNKNOWN lpUnknownWB = NULL;
LPUNKNOWN lpUnknownDC = NULL;
IHTMLElementCollection *objAllElement = NULL;
IHTMLDocument2 *objDocument = NULL;
CString strUrl, strTemp; lpUnknown = m_pBrowser->GetControlUnknown();
ASSERT(lpUnknown); if (lpUnknown)
{
hr = lpUnknown->QueryInterface(IID_IUnknown, (LPVOID*)&lpUnknownWB);
ASSERT(SUCCEEDED(hr));
if (FAILED(hr))
{
LOGD(L"QueryInterface IID_IUnknown failed.");
return;
} hr = pDisp->QueryInterface(IID_IUnknown, (LPVOID*)&lpUnknownDC);
ASSERT(SUCCEEDED(hr));
if (SUCCEEDED(hr) && lpUnknownWB == lpUnknownDC)
{
// The document has finished loading.
strUrl = m_pBrowser->get_LocationURL();
if (strUrl.IsEmpty())
{
LOGD(L"get_LocationURL strUrl.IsEmpty().");
return;
}
objDocument = (IHTMLDocument2*)m_pBrowser->get_Document();
objDocument->get_all(&objAllElement);
if (strUrl == _T("http://www.baidu.com/"))
{
CComPtr<IDispatch>pDisp;
objAllElement->item(COleVariant(_T("kw")), COleVariant((long)), &pDisp);
CComQIPtr<IHTMLElement, &IID_IHTMLElement>pElement;
if (pDisp == NULL)
{
LOGD(L"pDisp == NULL.");
return;
}
else
{
pElement = pDisp;
pElement->put_innerText(_T("Hello")); //填充表单
} VARIANT name;
CComBSTR tag;
long index;
objAllElement->get_length(&index);
name.vt = VT_I4;
for (long i = ; i < index; i++)//遍历所有元素,通过id属性获取值
{
name.lVal = i;
IDispatch * pDispatch = NULL;
objAllElement->item(name, name, &pDispatch);
IHTMLElement* spElement;
pDispatch->QueryInterface(IID_IHTMLElement, (void**)&spElement);
BSTR tag;
spElement->get_id(&tag);
CString ss(tag);
if (ss == "su")
{
spElement->click();
} spElement->Release();
}
}
}
} if (lpUnknownWB)
{
lpUnknownWB->Release();
} if (lpUnknownDC)
{
lpUnknownDC->Release();
}
}
c++ 实现百度自动搜索的更多相关文章
- 利用WebBrowser控件实现百度自动搜索
(1)新建一个MFC对话框项目 (2)对话框中添加WebBrower控件,添加方法:点击菜单栏工具->选择工具箱项->在弹出的选择工具箱项对话框选择COM组件->Microsoft ...
- 百度移动搜索自动转码太坑爹,JS跳转地址会被抓取
这段时间碰到个很崩溃的问题,一个页面通过 script 加载请求服务端进行统计再输出js进行跳转,分为两个步骤分别统计, 打开页面通过script 请求远程服务器进行统计并输出要通过js使页面跳转的最 ...
- 转:jmeter性能测试---登录百度进行搜索
在做web程序性能测试时,loadrunner和jmeter是两款常用的工具,两者比较起来,jmeter非常轻巧,且开源免费,上手快.这里简单介绍下jmeter的使用,以登录百度进行搜索为例. jme ...
- 【程序员的吃鸡大法】利用OCR文字识别+百度算法搜索,玩转冲顶大会、百万英雄、芝士超人等答题赢奖金游戏
[先上一张效果图]: 一.原理: 其实原理很简单: 1.手机投屏到电脑: 2.截取投屏画面的题目部分,进行识别,得到题目和三个答案: 3.将答案按照一定的算法,进行搜索,得出推荐答案: 4.添加了一些 ...
- 利用OCR文字识别+百度算法搜索,玩转冲顶大会、百万英雄、芝士超人等答题赢奖金游戏
[先上一张效果图]: 一.原理: 其实原理很简单: 1.手机投屏到电脑: 2.截取投屏画面的题目部分,进行识别,得到题目和三个答案: 3.将答案按照一定的算法,进行搜索,得出推荐答案: 4.添加了一些 ...
- python+selenium实现百度关键词搜索自动化操作
缘起 之前公司找外面网络公司做某些业务相关关键词排名,了解了一下相关的情况,网络公司只需要我们提供网站地址和需要做的关键词即可,故猜想他们采取的方式应该是通过模拟用户搜索提升网站权重进而提升排名. 不 ...
- 使用python抓取百度搜索、百度新闻搜索的关键词个数
由于实验的要求,需要统计一系列的字符串通过百度搜索得到的关键词个数,于是使用python写了一个相关的脚本. 在写这个脚本的过程中遇到了很多的问题,下面会一一道来. ps:我并没有系统地学习过pyth ...
- Android接入百度自动更新SDK
一:前言 公司的app,上传到百度应用市场,然后说必须要接入百度的自动更新sdk才能上架,于是从百度官网上去下载jar包,下载的时候必须要带上数据统计,如果使用自动的jar包,还需要带上广告联盟,坑爹 ...
- 使用AJAX做关键字查询:输入框变化自动搜索、无刷新页面;
使用AJAX做关键字查询要求:1.无刷新页面2.输入框变化自动搜索 <style type="text/css"> .k{ width:150px; height:30 ...
随机推荐
- Edmonds_Karp 算法入门详解(转)
转载自:http://blog.csdn.net/hsqlsd/article/details/7862903 有n个点,有m条有向边,有一个点很特殊,只出不进,叫做源点,通常规定为1号点.另一个点也 ...
- POJ 1185 炮兵阵地(状态压缩DP)
题解:nState为状态数,state数组为可能的状态 代码: #include <map> #include <set> #include <list> #inc ...
- php解压 tar.gz 格式文件
1.运用php自带压缩与归档扩展(phar) $phar = new PharData('song.tar.gz'); //路径 要解压的文件 是否覆盖 $phar->extractTo('c: ...
- 在eclipse中下载包含子模块(Submodules)的git项目
先将项目下载下来 , 这时由于是子项目的原因 , 下载的项目中不包含任何子项目 . 这时在eclipse的Git Repositories中 , 选中Submodules , 右键点击update即可 ...
- php判断用户客户端是否是微信内置客户端
微信内置浏览器的渲染方式在某些方面和其他浏览器不同,所以有时候需要做一些兼容性处理,那么就需要判断是否是微信内置浏览器.最好的判断方式就是通过 User Agent 来判断. 工具/原料 php ...
- APPDelegate----launchOptions启动类型
IOS 中的 AppDelegate.m/h 文件是很重要的呢,因为它是对 Application 的整个生命周期进行管理的. 先明白,每个iPhone应用程序都有一个UIApplication,UI ...
- HTML readyState 属性 iframe onreadystatechange事件
-----------readyState--------------- 定义和用法 readyState 属性返回当前文档的状态(载入中……). 该属性返回以下值: uninitialized - ...
- angularjs 与django标签语法冲突的解决办法
在需要使用angularjs标签的地方套上verbatim标签,如: {% verbatim %} ... {% endverbatim %}
- Python的安装与基本语法
一,Python简介 Python是一种计算机程序设计语言,都是使用C语言实现,但是比C语言容易学习,易于阅读.Python可以应用于众多领域,整体呈上升趋势,广泛使用Python来做的事一 ...
- SQL SERVER 2005快捷键+visual studio 2008 快捷键
一.SQL SERVER 2005快捷键 快捷键 功能 CTRL + SHIF ...