📄 unit1.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
int i=1,num;
//String url1="http://www.eiboo.com/eiboohr/search.asp?page=1&stype=person&gzdd=noxz&key=";
String url2;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
Label2->Caption=" 请点确定开始执行。";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
String url1="http://www.eiboo.com/eiboohr/search.asp?page=";
url1=url1+i+"&stype=person&gzdd=noxz&key=";
Label2->Caption=" 正在连接,请稍等...";
if(NMHTTP1->Connected) NMHTTP1->Disconnect();
NMHTTP1->TimeOut = 10000;
NMHTTP1->InputFileMode = false;
NMHTTP1->OutputFileMode = false;
NMHTTP1->ReportLevel = Status_Basic;
NMHTTP1->Get(url1);
AnsiString str2=NMHTTP1->Body;
AnsiString str1,str4,str5;
int pos;
pos=str2.Pos("页次:");
str4=str2.Delete(1,pos+5);
pos=str4.Pos(">/");
if(pos>0) {
str1=str4.SubString(pos+2,15);
pos=str1.Pos("页");
num=str1.SubString(1,pos-1).ToInt();
}
Label2->Caption=" 总共有";
Label2->Caption=Label2->Caption+num+"页。";
while(i<=num)
{
url1="http://www.eiboo.com/eiboohr/search.asp?page=";
url1=url1+i+"&stype=person&gzdd=noxz&key=";
if(NMHTTP1->Connected) NMHTTP1->Disconnect();
NMHTTP1->TimeOut = 10000;
NMHTTP1->InputFileMode = false;
NMHTTP1->OutputFileMode = false;
NMHTTP1->ReportLevel = Status_Basic;
NMHTTP1->Get(url1);
Label2->Caption="正在处理第";
Label2->Caption=Label2->Caption+i+"页信息,请稍等...";
//ShowMessage(i);
str2=NMHTTP1->Body;
pos=str2.Pos("uid=");
while(pos>0){
//Memo1->Clear();
//Memo1->Text=str2;
str1=str2.SubString(pos+4,15);
str2=str2.Delete(1,pos+3);
pos=str1.Pos("\"");
//Memo1->Text=Memo1->Text+str1.SubString(1,pos-1);
url2="http://www.eiboo.com/eiboohr/person.asp?uid="+str1.SubString(1,pos-1);
//ShowMessage(url2);
if(NMHTTP2->Connected) NMHTTP2->Disconnect();
NMHTTP2->TimeOut = 10000;
NMHTTP2->InputFileMode = false;
NMHTTP2->OutputFileMode = false;
NMHTTP2->ReportLevel = Status_Basic;
NMHTTP2->Get(url2);
AnsiString str3=NMHTTP2->Body;
String s1,s2,s3,s4,s5,s6,s7,s8;
//Memo1->Text="姓名:";
pos=str3.Pos("姓名:");
if(pos>0) {
str1=str3.SubString(pos+5,15);
pos=str1.Pos("</");
//Memo1->Text=Memo1->Text+str1.SubString(1,pos-1);
s1=str1.SubString(1,pos-1);
}
pos=str3.Pos("性别:");
if(pos>0) {
str1=str3.SubString(pos+5,15);
pos=str1.Pos(" ");
//Memo1->Text=Memo1->Text+str1.SubString(1,pos-1);
s2=str1.SubString(1,pos-1);
}
pos=str3.Pos("出生年月:");
if(pos>0) {
str1=str3.SubString(pos+9,50);
pos=str1.Pos("</");
//Memo1->Text=Memo1->Text+str1.SubString(1,pos-1);
s3=str1.SubString(1,pos-1);
}
pos=str3.Pos("民族:");
if(pos>0) {
str1=str3.SubString(pos+5,50);
pos=str1.Pos(" ");
//Memo1->Text=Memo1->Text+str1.SubString(1,pos-1);
s4=str1.SubString(1,pos-1);
}
pos=str3.Pos("专 业:");
if(pos>0) {
str1=str3.SubString(pos+6,50);
pos=str1.Pos("</");
//Memo1->Text=Memo1->Text+str1.SubString(1,pos-1);
s5=str1.SubString(1,pos-1);
}
pos=str3.Pos("毕业院校:");
if(pos>0) {
str1=str3.SubString(pos+9,50);
pos=str1.Pos("</");
// Memo1->Text=Memo1->Text+str1.SubString(1,pos-1);
s6=str1.SubString(1,pos-1);
}
pos=str3.Pos("应聘岗位:");
if(pos>0) {
str1=str3.SubString(pos+9,50);
pos=str1.Pos("</");
//Memo1->Text=Memo1->Text+str1.SubString(1,pos-1);
s7=str1.SubString(1,pos-1);
}
pos=str3.Pos("联系电话:");
if(pos>0) {
str1=str3.SubString(pos+9,50);
pos=str1.Pos("(保密)");
//Memo1->Text=Memo1->Text+str1.SubString(1,pos-1);
s8=str1.SubString(1,pos-1);
}
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add("insert into inf values('"+s1+"','"+s2+"','"+s3+"','"+s4+"','"+s5+"','"+s6+"','"+s7+"','"+s8+"')") ;
ADOQuery1->ExecSQL();
// ADOQuery1->Close();
pos=str2.Pos("uid=");
//ShowMessage(pos);
}
if(pos==0) i++;
}
if(i>num)
{
Label2->Caption="执行完毕,请打开数据库查看。";
ShowMessage("人才信息写入完毕");
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::NMHTTP1Failure(CmdType Cmd)
{
ShowMessage("连接失败");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::NMHTTP2Failure(CmdType Cmd)
{ AnsiString str5;
int pos5;
str5=url2+"8";
pos5=str5.Pos("uid=");
str5=str5.Delete(1,pos5+3);
pos5=str5.Pos("8");
str5=str5.SubString(1,pos5-1);
ShowMessage("连接"+str5+"用户信息失败,请点击OK跳过。");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
//ADOQuery1->Close();
// NMHTTP1->Disconnect();
// NMHTTP2->Disconnect();
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -