社区
网络编程
帖子详情
网页爬虫
luozheng
2003-11-27 01:32:55
现在有个项目,它的数据来源于一个网站,需要有个程序不停的去以http的形式去请求,得到服务器发送过来的网页代码,然后在内存里分析出有用的数据。
现在基本可实现这个效果,但不是很稳定,不知道有没有办法,我用一个IE窗口打开那个数据页面,然后用程序通过窗口定位,找到那个窗口,然后,再把窗口里显示的页面的html数据全部读出来,再作分析,这样,就不需要我自已作http的请求了。
不知道有哪位大侠知道该如何做。
急!!!!!!
...全文
300
5
打赏
收藏
网页爬虫
现在有个项目,它的数据来源于一个网站,需要有个程序不停的去以http的形式去请求,得到服务器发送过来的网页代码,然后在内存里分析出有用的数据。 现在基本可实现这个效果,但不是很稳定,不知道有没有办法,我用一个IE窗口打开那个数据页面,然后用程序通过窗口定位,找到那个窗口,然后,再把窗口里显示的页面的html数据全部读出来,再作分析,这样,就不需要我自已作http的请求了。 不知道有哪位大侠知道该如何做。 急!!!!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Semigod
2003-11-27
打赏
举报
回复
还是用 CAtlHttpClient 模板类来实现比较好。 wininet 效率比较差,IE控件就更慢了。
还有socket tools这个东西也很好用。自己写HTTP客户端就没有必要了
ZHENG017
2003-11-27
打赏
举报
回复
如果不使用代理,把
static const char chProxyServerAddr[]="192.168.0.xx";//改成www.csdn.net
static int iProxyServerPort = 3128;//改成80.
ZHENG017
2003-11-27
打赏
举报
回复
我的使用http代理获取文件的代码,越来越不想跟人说话了,只知道paste. 郁闷。
#include <windows.h>
#include <stdio.h>
#include "ammimeutils.h"
#pragma comment(lib,"ws2_32.lib")
#define PROXY_NEED_AUTH 1
static const char chProxyServerAddr[]="192.168.0.xx";
static int iProxyServerPort = 3128;
static char chAuthLogin[]="yourid:yourpwd";
int main()
{
WSADATA WsaData;
if (WSAStartup(0x202,&WsaData))
return -1;
SOCKET sConnect2Proxy = socket(AF_INET,SOCK_STREAM,0);
if (sConnect2Proxy == INVALID_SOCKET)
return -2;
char chDataBuf[8192] = "";
struct sockaddr_in ProxyAddr = {0};
ProxyAddr.sin_family = AF_INET;
ProxyAddr.sin_addr .S_un .S_addr = inet_addr(chProxyServerAddr);
ProxyAddr.sin_port = htons(iProxyServerPort);
if (0 == connect(sConnect2Proxy,(const sockaddr*)&ProxyAddr,sizeof(sockaddr_in)))
{
sprintf(chDataBuf,"GET http://expert.csdn.net/Expert/topic/2501/2501139.xml?temp=.6500666 HTTP/1.1\r\n");
CBase64Utils base64;
#ifdef PROXY_NEED_AUTH
lstrcat(chDataBuf,"Proxy-Authorization: Basic ");
lstrcat(chDataBuf,base64.Encode(chAuthLogin,lstrlen(chAuthLogin)));
#endif
lstrcat(chDataBuf,"\r\n\r\n");
int iTransCnt = 0;
iTransCnt = send(sConnect2Proxy,chDataBuf,lstrlen(chDataBuf),0);
if (iTransCnt >0)
{
iTransCnt = recv(sConnect2Proxy,chDataBuf,8192,0);
if (iTransCnt >0)
{
printf(chDataBuf);
}
}
}
shutdown(sConnect2Proxy,2);
closesocket(sConnect2Proxy);
WSACleanup();
return 0;
}
sevencat
2003-11-27
打赏
举报
回复
这个想法也比较巧妙。是不是偷人家数据吧?以前我想将一个网站上的一些表格用这种方法搞下来的。后来懒了...
UP一下先。
铖邑
2003-11-27
打赏
举报
回复
怎么会用这么笨的办法,这样做有什么好处呢?不就是少写几行代码而已。
你可以用wininet API,甚至直接用socket连上去,输入一个get命令就可以将网页取下来。
用java实现
爬虫
抓取
网页
中的表格数据功能源码
使用java代码基于MyEclipse开发环境实现
爬虫
抓取
网页
中的表格数据,将抓取到的数据在控制台打印出来,需要后续处理的话可以在打印的地方对数据进行操作。包解压后导入MyEclipse就可以使用,在TestCrawTable中右键...
网页
内容自动抓取工具-我的网络
爬虫
自己写的网络
爬虫
工具,配置了只对某些论坛抓取,自己可以改写配置文件来抓取其他
网页
内容...
150讲轻松学习Python网络
爬虫
因此我们又增加了两个章节用来提高
爬虫
程序的灵活性,分别是:
爬虫
进阶:包括IP代理,多线程
爬虫
,图形验证码识别、JS加密解密、动态
网页
爬虫
、字体反爬识别等。 Scrapy和分布式
爬虫
:Scrapy框架、Scrapy-redis组件...
网页
爬虫
逆向与AST入门系列教程(一、初识
网页
爬虫
逆向与AST)
网页
爬虫
逆向是指通过对目标
网页
的结构和代码进行分析,获取网站的数据、绕过反爬机制或者模拟用户行为的技术。传统的
网页
爬虫
通常是基于请求-响应模式的,然而,越来越多的网站采取了反爬措施,使得传统
网页
爬虫
...
【Python
爬虫
】简单的
网页
爬虫
简单的
网页
爬虫
requests的使用使用requests获取
网页
的源代码requests与正则结合多线
爬虫
多进程库开发多线程
爬虫
爬虫
算法的开发深度优先搜索广度优先搜索算法的选择小测试 requests的使用 requests是Python的一个第三...
网络编程
18,356
社区成员
64,214
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章