c分析网页源码
⑴ c++,获取网页源代码
用CInternetSession的OpenUrl函数
参照这段代码
void CHttpClinetDlg::OnButton1()
{ UpdateData(TRUE);
CInternetSession mySession(NULL,0);
CHttpFile * myHttpFile=NULL;
m_infor="连接到站点"+m_URL+"\r\n";
CString myData;
myHttpFile=(CHttpFile*)mySession.OpenURL(m_URL);
while (myHttpFile->ReadString(myData))
{
m_infor=m_infor+"\r\n";
m_infor+=myData;
}
myHttpFile->Close();
mySession.Close();
UpdateData(FALSE);
}
⑵ 帮我分析一下网页源码(我想知道它的视频下载地址)
建议你最好把那段视频下载下来
使用方法:
1、打开薯仔视频或豆单视频页面,如:http://www.tudou.com/playlist/playindex.do?lid=608662
2、在地址栏的tudou.com前面加一个kiss后回车,即访问:
http://www.kisstudou.com/playlist/playindex.do?lid=608662,怎么样,看到所有flv下载地址了吗?开始下载吧!
3、目前可以kiss的地址示例:
http://www.kisstudou.com/programs/view/YDn_zTq_8gI/(单视频播放页面1)
http://www.kisstudou.com/programs/view.php?itemID=7701426(单视频播放页面2)
http://www.kisstudou.com/playlist/playindex.do?lid=608662(豆单播放页面)
http://www.kisstudou.com/playlist/id/608662/(豆单介绍页面,无需进入播放页面)
http://www.kisstudou.com/playlist/showPlayList.do?lid=1414378(豆单介绍页面2)
http://www.kisstudou.com/album/view/RCFpiU0PYAM/(相册视频播放页面)
4、其它视频网站(如56,优酷等)的下载方法:将视频播放地址复制到上面的文本框后点“开始解析”,同样能看到flv下载地址。
如:http://www.56.com/u67/v_MTAwMDAwMA.html
http://www.kisstudou.com/
⑶ c/c++如何抓取网页内容
1、第一种是编写一个 HTTP 客户端程序,主动连接对端地址,并发送 GET 请求,然后接收响应。代码量较大,而且需要对 HTTP 协议非常熟知,不仅要处理 HTTP, 若是安全连接的网站,可能还要处理 HTTPS, 不建议采用;
2、第二种是使用外部工具,若你 Linux 下编程,可以在程序中调用 wget 命令,将请求的 URL 传入 wget 做为参数,并将返回的结果输出到一个指定的文件,然后去读取这个文件,分析返回的 HTML 源码即可;
3、第三种是使用 HTTP 库,比如 libcurl 库,网上有使用方法,使用起来很简单,推荐使用这种方法。
⑷ c语言获取网页源码
这个不是c语言的问题,网页很明确的告诉这个文档已经搬到t.sina.com.cn。这是一个跳转网页,你手动复制weibo.sina.com到浏览器,你看会跳转到weibo.com/guide/welcome,c不会像浏览器那样跳转后再获取吧,除非你改下程序,但是可能要涉及到http协议了,学术浅薄,就不多讲,祝你好运!
⑸ C语言/C++,用recv获取网页源代码,中文为什么是乱码 代码如下:
这种问题通常是你的代码在处理字符串是弄错了。。。
接收过来的内容应该没问题吧。。。。
只是显示的时候弄错了吧。。
仔细检查一下,中文字符占2个字节,指针头别弄错了,最后加上'\0'别加错位置。。。
如果英文字符都不可以正确显示的话,那可能是粘包。
还有是不是编码问题。
⑹ 如何分析网站源码
分析网站源码可以从以下同个方面
第一,网站采用的技术,是php还是asp,通常php好于asp
第二,网站布局结构是用的div/css还是tabel通常div布局更有利网站收录
第三,网站的源码是否支持二次开发,书写是否规范.只要看代码有没有加密,有没有注释,易不易看懂
第四,网站源码是否原创,是否有版权问题.如果你是要用它建站,这个还是要注意下了.免得吃官司
第五,源码的安全性,可以用360网站网站在线安全检测来检查一下.
综上所述就是分析网站的几个点了,打了这么多字希望采纳
⑺ 哪位高手知道网页源代码解析技术
恩恩,源代码其实一点用都不顶的,如果是下载个FLASH文件或者音乐视频什么的调用还好使,要是连接数据库就不行了,基本全都隐藏了
⑻ 如何利用c语言分析网页
首先,你这个想法还是很不错的,我以前也想这么做过。不过,学习html语言在这里肯定是次要的,主要的还是要学会分析的方法,而不是掌握被分析的内容,你说是吧?
如果要用程序抓取网页自动保存到本地,就要会用socket编程,或者学习使用libcurl库,这些都比学html语言有用的多,不做网页抓取的时候,这些知识依然非常有用。而且,不同的网页,内容不同,规律可能也不同。比如你给的那个例子网址,我右键查看了源代码,里面就根本没有所谓的<td>、<tr>标签,即它的表格不是通过这些标签来实现的。所以,让你去看这些标签,就是南辕北辙了。
网页分析,说到底还是字符串处理和分析。所以,你如果真的想学,不如好好学一下正则表达式和字符串处理相关的函数,以及函数库,比如tidy库等。正则表达式是用来匹配一类字符串的,方便找规律,也方便处理,你稍微学习一点点就知道有多么的强大,多么的有用了。而且,正则表达式跟语言无关,什么语言都能用得到,学这个不亏的。
标准C库中没有正则表达式相关的函数,一般来说C中使用两种正则表达式库,一为POSIX C正则库,二为perl正则库PCRE。相比较而言PCRE要强大些,POSIX C正则库就足够使用。
下面,这几个链接里面有网页分析的一些例子,虽然不都是C语言来处理的。但是,思路都是一致的。 所以,说到底,还是正则表达式、正则函数库、字符串处理函数这些才是根本。先说这些,希望对你有所帮助。如果你在学习过程中还有什么问题,欢迎随时交流:)
C#的: http://www.jb51.net/article/16618.htm
C#的: http://mytiu.blog.163.com/blog/static/1059718452009127112226478/
这里还有一段C语言的代码, 是将下载下来的网页源代码处理成没有标签的纯文字文本
#include <tidy.h>
#include <buffio.h>
#include <stdio.h>
#include <errno.h>
int main(int argc, char **argv )
{
const char* input = "<title>Foo</title><p>Foo!";
TidyBuffer output = {0};
TidyBuffer errbuf = {0};
int rc = -1;
Bool ok;
TidyDoc tdoc = tidyCreate(); // Initialize "document"
printf( "Tidying:\t%s\n", input );
ok = tidyOptSetBool( tdoc, TidyXhtmlOut, yes ); // Convert to XHTML
if ( ok )
rc = tidySetErrorBuffer( tdoc, &errbuf ); // Capture diagnostics
if ( rc >= 0 )
rc = tidyParseString( tdoc, input ); // Parse the input
if ( rc >= 0 )
rc = tidyCleanAndRepair( tdoc ); // Tidy it up!
if ( rc >= 0 )
rc = tidyRunDiagnostics( tdoc ); // Kvetch
if ( rc > 1 ) // If error, force output.
rc = ( tidyOptSetBool(tdoc, TidyForceOutput, yes) ? rc : -1 );
if ( rc >= 0 )
rc = tidySaveBuffer( tdoc, &output ); // Pretty Print
if ( rc >= 0 )
{
if ( rc > 0 )
printf( "\nDiagnostics:\n\n%s", errbuf.bp );
printf( "\nAnd here is the result:\n\n%s", output.bp );
}
else
printf( "A severe error (%d) occurred.\n", rc );
tidyBufFree( &output );
tidyBufFree( &errbuf );
tidyRelease( tdoc );
return rc;
}
⑼ 如何在objective-c中读取一个URL网页的源代码
建立一个GET请求,向URL发送请求,得到的数据就是网页源码
⑽ C,C++怎样从网页源码中取出内容
正则表达式匹配 <head> 和 <body> 中所有非 <[^>]*> 的内容
用现成的 html 解析库
手工写HTML解析代码