MFC网页分析程序

栏目: C++ · 发布时间: 7年前

内容简介:MFC网页分析程序

MFC网页分析程序 开发一个网页分析程序,可以抓取特定网页的内容,加以分析之后将结果保存之数据库。

插播一段闲话:

毕设告一段落,真的要毕业啦。
毕设期间,感觉自己学到了不少Android开发的基本东西,但我都不敢写文章发上来。因为在paperfree查重时显示,我抄袭了一篇文章:
来源:互联网资源    标题:**************(具体文章名就匿了) - 胡博靖的技术博客

还有比这更惨的事情吗?说我抄袭了自己的文章[哭泣]

最终知网查重率1.3%,毕设顺利完成,挺开心的,虽然编程过程遇到了很多的难题,好在大都解决了。导师人也很好,给人感觉是才华横溢的学者型,交材料时我们聊了聊各自毕业的场景,他祝贺我们毕业时,感觉真的就到了离开学校的时候,时光飞逝啊。

—————————————————————–闲话分割线———————————————————————

网页分析程序具体要求描述如下:

1.使用http技术获取一个博客的首页 http://blog.csdn.net/jiangsheng

2.分析这个网页的内容,从中找到博客中每一篇文章的链接。

3.通过这些链接,获取文章的正文网页,从内容中提取文章的标题和文章的内容。

4.将文章的标题与内容分别保存至数据库。

5.布局要求:提供一个列表框和一个多行文本框。列表框中显示从数据库中获取的文章标题列表;当点击列表框中的某一篇文章时,在文本框中显示该文章的内容。

首先实现获取网页源码的功能:

void CGetWebDlg::OnGetweb() 
{
	//TODO:Add your control notification handler code here
	CInternetSession session;
	CHttpFile *file = NULL; 
	CString strURL = "http://blog.csdn.net/jiangsheng";
    CString strHtml = _T(""); //存放网页数据
 try
 { 
  
	file =(CHttpFile*)session.OpenURL(strURL);
 } 
catch(CInternetException *m_pException)
 { 
	file = NULL;
	m_pException->m_dwError;
	m_pException->Delete();
	session.Close();
	MessageBox("网络连接错误","提示");
	return;
 }
	CString strLine;
	char sRecived[1024];
	if (file != NULL) 
	{
		while(file->ReadString((LPTSTR)sRecived,1024)!=NULL) 
		{
			strHtml += sRecived; 
		}
 }
	else
	{ 
		AfxMessageBox(_T("失败!"));
	}
        session.Close();
		file->Close();
		delete file; 
		file = NULL;

		ConvertUtf8ToGBK(strHtml);//源码转换
		(this->GetDlgItem(IDC_EDITCONTENT))->SetWindowText(strHtml);
  
}

注意网页编码问题,因此需要格式转换,编写一个函数:

void ConvertUtf8ToGBK(CString &strUtf8)
{
          
    int len=MultiByteToWideChar(CP_UTF8, 0, (LPCTSTR)strUtf8, -1, NULL,0);
	unsigned short * wszGBK = new unsigned short[len+1];
	memset(wszGBK, 0, len * 2 + 2);
	MultiByteToWideChar(CP_UTF8, 0, (LPCTSTR)strUtf8, -1, (LPWSTR)wszGBK, len);
 
	len = WideCharToMultiByte(CP_ACP, 0, (LPCWSTR)wszGBK, -1, NULL, 0, NULL, NULL); 
	char *szGBK=new char[len + 1];
	memset(szGBK, 0, len + 1);
	WideCharToMultiByte (CP_ACP, 0, (LPCWSTR)wszGBK, -1, szGBK, len, NULL,NULL);
 
	strUtf8 = szGBK;
	 delete[] szGBK;
	 delete[] wszGBK;
}

MFC网页分析程序

有些类似网页爬虫的感觉。

为了接下来的操作,我去学正则表达式了……

P.S.虽然蒋晟CSDN不更新了,但最近看他在知乎上怼别人的唇枪舌战……可带劲了哈哈哈


以上所述就是小编给大家介绍的《MFC网页分析程序》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

我的第一本编程书

我的第一本编程书

[日]平山尚 / 张沈宇 / 人民邮电出版社 / 2016-7 / 79.00元

写这本书之前,作者一直在摸索一种最有利于入门者学编程的方法,并应用到教学当中。经过两年的教学实践,他确信他的方法是有效的,于是便有了这本书。这本书面向的是完全没有接触过编程的读者。作者将门槛设置得非常低,读者不需要懂得变量、函数这些名词(这些名词在书中也不会出现),不需要会英语,完全不需要查阅其他书籍,只需要小学算术水平即可。这本书给初学者非常平缓的学习曲线,有利于为之后的进阶学习打下坚实的基础。一起来看看 《我的第一本编程书》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

在线进制转换器
在线进制转换器

各进制数互转换器

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码