网页获取数据但是不能随网页更新
当我用pfile= (CHttpFile *)session.OpenURL(url)获取网页内容后,把它输出到一个txt文件中,然后提取出需要的数据这都没问题,当时用循环来控制隔一段时间获取后,每次提出来的都是一样的数据,网页中的是随时间变化,可是提取出来的一直不变,不知道怎么回事。代码,如下
char * url = "(需要的网址)";这句没问题
CInternetSession session("HttpClient"); //会话
CHttpFile * pfile = NULL ;
CString content;
char read2[221184];
char *fp22;
char *fp32;
pfile= (CHttpFile *)session.OpenURL(url);
DWORD dwStatusCode;
pfile -> QueryInfoStatusCode(dwStatusCode);
if(dwStatusCode == HTTP_STATUS_OK)
{
//char sRev[1024];
CString data;
while (pfile -> ReadString(data))
{
content += data;
}
content.TrimRight();
ofstream fout("3.txt");// 输出到一个文件中
fout <<(LPCTSTR)content;
fout.close();
}
content.Empty();
FILE *fp1=NULL;
fopen_s(&fp1,"3.txt","r");
while(fread(read2,1,110592,fp1))
fp22=strstr(read2,"需要对比的数据");
ofstream fout1("4.txt");//把指针调到需要的位置
fp32=fp22+512;
fout1<<fp32;
fout1.close();
char fp4[230];
ifstream file2("4.txt");//需要的数据写入文件
file2.get(fp4,230);
file2.close();
for(int i12=0;i12<5;i12++)//存成数组
{
if(fp4[1+i12*55]=='2')
p[iii][i12]=2;
else if(fp4[1+i12*55]=='3')
p[iii][i12]=3;
else if(fp4[1+i12*55]=='4')
p[iii][i12]=4;
else if(fp4[1+i12*55]=='5')
p[iii][i12]=5;
else if(fp4[1+i12*55]=='6')
p[iii][i12]=6;
else if(fp4[1+i12*55]=='7')
p[iii][i12]=7;
else if(fp4[1+i12*55]=='8')
p[iii][i12]=8;
else if(fp4[1+i12*55]=='9')
p[iii][i12]=9;
else if(fp4[1+i12*55]=='0')
p[iii][i12]=10;
else if(fp4[0+i12*55]=='1'&&fp4[1+i12*55]=='1')
p[iii][i12]=11;
else if(fp4[0+i12*55]=='0'&&fp4[1+i12*55]=='1')
p[iii][i12]=1;
else std::cout<<"error";
}
int i1111=16;//存入最后保存的数组里
int i1112=iii;
int i1113=0;
while(i1111)
{for(int i1114=0;i1114<5;i1114++)
{p1[i1113][i1114]=p[i1112-16][i1114];
p2[i1113][i1114]=p[i1112-15][i1114];}
i1112++;
i1113++;
i1111--;
}
for(int i123=0;i123<5;i123++)
{t1[i123]=p[iii][i123];}
pfile->Close();
delete pfile;
session.Close();
content.Empty();
delete content;
int iii11=1;
while(iii11)
{time_t rawtime; //获取系统时间,以延迟一段时间
struct tm*timeinfo;
time(&rawtime);
timeinfo=localtime(&rawtime);
if(timeinfo->tm_min%10!=0)
{iii11=0;
break;
}
}