MFC网页分析程序

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

内容简介: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网页分析程序》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

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

代码里的世界观——通往架构师之路

代码里的世界观——通往架构师之路

余叶 / 人民邮电出版社 / 2018-11 / 59.00元

本书分为两大部分,第一部分讲述程序员在编写程序和组织代码时遇到的很多通用概念和共同问题,比如程序里的基本元素,如何面向对象,如何面向抽象编程,什么是耦合,如何进行单元测试等。第二部分讲述程序员在编写代码时都会遇到的思考和选择,比如程序员的两种工作模式,如何坚持技术成长,程序员的组织生产方法,程序员的职业生涯规划等。一起来看看 《代码里的世界观——通往架构师之路》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

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

Base64 编码/解码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换