基本信息
源码名称:自动登录qq空间,获取最近访客列表.
源码大小:0.05M
文件格式:.rar
开发语言:C#
更新时间:2014-04-18
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):78630559
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
自动登录qq空间,获取最近访客列表.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
Timer terAutologin = new Timer();
public Form1()
{
InitializeComponent();
terAutologin.Enabled = true;
terAutologin.Interval = 3 * 1000;
terAutologin.Tick = ter_Tick;
}
void ter_Tick(object sender, EventArgs e)
{
if(wb1.Document==null)
{
return;
}
HtmlElement dialog_content_1 = wb1.Document.GetElementById("dialog_content_1");
if (dialog_content_1 == null)
{
return;
}
var frame = wb1.Document.Window.Frames[0];
if (frame==null)
{
return;
}
if (frame.Document==null)
{
return;
}
// iframe
HtmlElement u = frame.Document.GetElementById("u");
u.InnerText = "171586098";
HtmlElement p = frame.Document.GetElementById("p");
p.InnerText = "*************";
p.SetAttribute("value", "********");
HtmlElement login_button = frame.Document.GetElementById("login_button");
login_button.InvokeMember("click");
terAutologin.Stop();
}
private void Form1_Load(object sender, EventArgs e)
{
ssl1.Text = string.Empty;
txtUrl.Text = "http://user.qzone.qq.com/14371939";
wb1.ScriptErrorsSuppressed = true;
wb1.Navigate("http://user.qzone.qq.com/14371939/main");
}
private void btnGO_Click(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(txtUrl.Text))
{
wb1.Navigate(txtUrl.Text);
ssl1.Text = txtUrl.Text " Navigated";
}
}
private void wb1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
System.Diagnostics.Trace.WriteLine(e.Url.ToString());
// http://g.cnc.qzone.qq.com/cgi-bin/friendshow/cgi_get_visitor_simple?uin=4371939&type=1&mask=3&rd=0.7801240284461528&_=1397644130601&g_tk=9281770
ssl1.Text = e.Url.ToString() " Completed";
tryRead();
}
private void btnTest_Click(object sender, EventArgs e)
{
tryRead();
}
private void tryRead()
{
if (wb1.Document == null)
{
return;
}
HtmlElement pagediv = wb1.Document.GetElementById("visitor_list_page_con");
if (pagediv==null)
{
return;
}
//若分页内容存在,则表示已经加载过了.
if(pagediv.Children.Count>0)
{
handlerAbc(null,null);
return;
}
//模拟点击 "最近访客"
var aa = pagediv.Parent.Parent.FirstChild.Children[2];
aa.InvokeMember("click");
//给访问列表的容器绑定一个事件...回调时就能获取到.
HtmlElement guestlist = pagediv.Parent.FirstChild;
//ul.RaiseEvent
guestlist.AttachEventHandler("onpropertychange", new EventHandler(handlerAbc));
}
private void handlerAbc(Object sender, EventArgs e)
{
HtmlElement div = wb1.Document.GetElementById("visitor_list_page_con");
HtmlElement guestlist = div.Parent.FirstChild;
if (guestlist.InnerHtml.IndexOf("QZONE.FrontPage.showLoginBox") > -1)
{
HtmlElement alogin = guestlist.GetElementsByTagName("a")[0];
alogin.InvokeMember("click");
// 使用定时器.检测登录窗口的出现..
terAutologin.Start();
return;
}
else
{
System.Text.StringBuilder sb = new StringBuilder();
// 取回里面的内容?
foreach (HtmlElement li in guestlist.Children)
{
string qq = li.GetAttribute("uin");
string visitname = li.Children[1].FirstChild.InnerText;
string visittime = li.Children[1].Children[1].InnerText;
sb.AppendLine(qq visitname visittime);
}
MessageBox.Show(sb.ToString());
}
}
}
}