⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pcbrf.c

📁 harvest是一个下载html网页得机器人
💻 C
📖 第 1 页 / 共 5 页
字号:
static UNCH/*       bit  nmc  nms  re   spc  non  ee   eob  rs   and  grpc grpo lit  lita         dtgc dtgo opt  or   pero plus rep  rni  seq  refc */tk01 []={TK1 ,TK1 ,SP1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,         TK1 ,DG1 ,TK1 ,TK1 ,ER1 ,TK1 ,TK1 ,RN1 ,TK1 ,TK1 },/*tk1*/tk01a[]={INV_,INV_,NAS_,NOP_,NOP_,SYS_,EOF_,GET_,RS_ ,INV_,INV_,GRP_,INV_,INV_,         INV_,GRP_,INV_,INV_,NOP_,INV_,INV_,NOP_,INV_,INV_},co01 []={TK1 ,TK1 ,TK1 ,CO1 ,CO1 ,CO1 ,CO1 ,CO1 ,CO1 ,TK1 ,SP1 ,TK1 ,TK1 ,TK1 ,         TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 },/*co1*/co01a[]={INV_,INV_,INV_,NOP_,NOP_,SYS_,EE_ ,GET_,RS_ ,AND ,GRPE,INV_,INV_,INV_,         INV_,INV_,INV_,OR  ,INV_,INV_,INV_,INV_,SEQ ,INV_},er01 []={TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,ER1 ,TK1 ,ER1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,         TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 },/*er1*/er01a[]={PCI_,PCI_,PER_,PCI_,PCI_,SYS_,PCI_,GET_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,         PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_},sp01 []={TK1 ,TK1 ,TK1 ,CO1 ,CO1 ,SP1 ,CO1 ,SP1 ,CO1 ,TK1 ,SP1 ,TK1 ,TK1 ,TK1 ,         TK1 ,TK1 ,CO1 ,TK1 ,TK1 ,CO1 ,CO1 ,TK1 ,TK1 ,TK1 },/*sp1*/sp01a[]={INV_,LEN_,LEN_,NOP_,NOP_,SYS_,EE_ ,GET_,RS_ ,AND ,GRPE,INV_,INV_,INV_,         INV_,INV_,OPT ,OR  ,INV_,REP ,OREP,INV_,SEQ ,LEN_},/*       bit  nmc  nms  spc  spc  non  ee   eob  rs   and  grpc grpo lit  lita         dtgc dtgo opt  or   pero plus rep  rni  seq  refc  */rn01 []={TK1 ,TK1 ,CO1 ,TK1 ,TK1 ,RN1 ,TK1 ,RN1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,         TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 },/*rn1*/rn01a[]={PCI_,PCI_,RNS_,PCI_,PCI_,SYS_,PCI_,GET_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,         PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_},dg01 []={TK1 ,TK1 ,DN1 ,DG1 ,DG1 ,DG1 ,DG1 ,DG1 ,DG1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,         TK1 ,TK1 ,TK1 ,TK1 ,DR1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 },/*dg1*/dg01a[]={INV_,INV_,NAS_,NOP_,NOP_,SYS_,EOF_,GET_,RS_ ,INV_,INV_,INV_,INV_,INV_,         INV_,INV_,INV_,INV_,NOP_,INV_,INV_,INV_,INV_,INV_},dn01 []={TK1 ,TK1 ,TK1 ,DN1 ,DN1 ,DN1 ,DN1 ,DN1 ,DN1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,         TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,DT1 ,TK1 },/*dn1*/dn01a[]={INV_,INV_,INV_,NOP_,NOP_,SYS_,EE_ ,GET_,RS_ ,INV_,INV_,INV_,INV_,INV_,         INV_,INV_,INV_,INV_,INV_,INV_,INV_,INV_,DTAG,INV_},dt01 []={TK1 ,TK1 ,TK1 ,DT1 ,DT1 ,DT1 ,DT1 ,DT1 ,DT1 ,TK1 ,DT1 ,DT1 ,LI1 ,LA1 ,         SP1 ,TK1 ,TK1 ,DT1 ,DT1 ,TK1 ,TK1 ,TK1 ,DT1 ,TK1 },/*dt1*/dt01a[]={INV_,INV_,INV_,NOP_,NOP_,SYS_,EE_ ,GET_,RS_ ,INV_,NOP_,NOP_,NOP_,NOP_,         GRPE,INV_,INV_,NOP_,NOP_,INV_,INV_,INV_,NOP_,INV_},/*       bit  nmc  nms  spc  spc  non  ee   eob  rs   and  grpc grpo lit  lita         dtgc dtgo opt  or   pero plus rep  rni  seq  refc  */dr01 []={TK1 ,TK1 ,DG1 ,TK1 ,TK1 ,DR1 ,TK1 ,DR1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,         TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 },/*dr1*/dr01a[]={PCI_,PCI_,PER_,PCI_,PCI_,SYS_,PCI_,GET_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,         PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_},li01 []={LI1 ,LI1 ,LI1 ,LI1 ,LI1 ,LI1 ,LI1 ,LI1 ,LI1 ,LI1 ,LI1 ,LI1 ,DT1 ,LI1 ,         LI1 ,LI1 ,LI1 ,LI1 ,LI1 ,LI1 ,LI1 ,LI1 ,LI1 ,LI1 },/*li1*/li01a[]={NOP_,NOP_,NOP_,NOP_,NOP_,SYS_,EOF_,GET_,RS_ ,NOP_,NOP_,NOP_,NOP_,NOP_,         NOP_,NOP_,NOP_,NOP_,NOP_,NOP_,NOP_,NOP_,NOP_,NOP_},la01 []={LA1 ,LA1 ,LA1 ,LA1 ,LA1 ,LA1 ,LA1 ,LA1 ,LA1 ,LA1 ,LA1 ,LA1 ,LA1 ,DT1 ,         LA1 ,LA1 ,LA1 ,LA1 ,LA1 ,LA1 ,LA1 ,LA1 ,LA1 ,LA1 },/*la1*/la01a[]={NOP_,NOP_,NOP_,NOP_,NOP_,SYS_,EOF_,GET_,RS_ ,NOP_,NOP_,NOP_,NOP_,NOP_,         NOP_,NOP_,NOP_,NOP_,NOP_,NOP_,NOP_,NOP_,NOP_,NOP_},*grcmtab[] = {tk01, tk01a, co01, co01a, er01, er01a, sp01, sp01a,              rn01, rn01a, dg01, dg01a, dn01, dn01a, dt01, dt01a,              dr01, dr01a, li01, li01a, la01, la01a};struct parse pcbgrcm = {"GRCM", lexgrp, grcmtab, 0, 0, 0, 0};#undef TK1#undef CO1#undef ER1#undef SP1#undef RN1#undef DG1#undef DN1#undef DT1#undef DR1#undef LI1#undef LA1/* PCBGRCS: State and action table for content model suffix.            If suffix occurs, process it.  Otherwise, put character            back for the next parse.*//* Symbols for state names (end with a number). */#define SP4     0   /* Suffix expected. */static UNCH/*       bit  nmc  nms  re   spc  non  ee   eob  rs   and  grpc grpo lit  lita         dtgc dtgo opt  or   pero plus rep  rni  seq  refc */sp04 []={SP4 ,SP4 ,SP4 ,SP4 ,SP4 ,SP4 ,SP4 ,SP4 ,SP4 ,SP4 ,SP4 ,SP4 ,SP4 ,SP4 ,         SP4 ,SP4 ,SP4 ,SP4 ,SP4 ,SP4 ,SP4 ,SP4 ,SP4 ,SP4 },/*sp4*/sp04a[]={RCR_,RCR_,RCR_,RCR_,RCR_,SYS_,EE_ ,GET_,RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,         RCR_,RCR_,OPT ,RCR_,RCR_,REP ,OREP,RCR_,RCR_,RCR_},*grcstab[] = {sp04, sp04a};struct parse pcbgrcs = {"GRCS", lexgrp, grcstab, 0, 0, 0, 0};#undef SP4/* PCBGRNT: State and action table for name token group parse.            Groups cannot nest.  Reserved names are not allowed.            No suffixes or data tag pattern groups.*//* Symbols for state names (end with a number). */#define TK1     0   /* Token expected: name, #CHARS, data tag grp, model. */#define CO1     2   /* Connector between tokens expected. */#define ER1     4   /* PERO found when token was expected. */static UNCH/*       bit  nmc  nms  re   spc  non  ee   eob  rs   and  grpc grpo lit  lita         dtgc dtgo opt  or   pero plus rep  rni  seq  refc  */tk02 []={TK1 ,CO1 ,CO1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,         TK1 ,TK1 ,TK1 ,TK1 ,ER1 ,TK1 ,TK1 ,TK1 ,TK1 ,CO1 },/*tk1*/tk02a[]={INV_,NMT_,NMT_,NOP_,NOP_,SYS_,EOF_,GET_,RS_ ,INV_,INV_,INV_,INV_,INV_,         INV_,INV_,INV_,INV_,NOP_,INV_,INV_,INV_,INV_,NMT_},co02 []={TK1 ,TK1 ,TK1 ,CO1 ,CO1 ,CO1 ,CO1 ,CO1 ,CO1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,         TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 },/*co1*/co02a[]={INV_,INV_,INV_,NOP_,NOP_,SYS_,EE_ ,GET_,RS_ ,NOP_,GRPE,INV_,INV_,INV_,         INV_,INV_,INV_,NOP_,INV_,INV_,INV_,INV_,NOP_,INV_},er02 []={TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,ER1 ,TK1 ,ER1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,         TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 },/*er1*/er02a[]={PCI_,PCI_,PER_,PCI_,PCI_,SYS_,PCI_,GET_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,         PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_},*grnttab[] = {tk02, tk02a, co02, co02a, er02, er02a};struct parse pcbgrnt = {"GRNT", lexgrp, grnttab, 0, 0, 0, 0};#undef TK1#undef CO1#undef ER1/* PCBGRNM: State and action table for name group parse.            Groups cannot nest.  Reserved names are not allowed.            No suffixes or data tag pattern groups.*//* Symbols for state names (end with a number). */#define TK1     0   /* Token expected: name, #CHARS, data tag grp, model. */#define CO1     2   /* Connector between tokens expected. */#define ER1     4   /* PERO found when token was expected. */static UNCH/*       bit  nmc  nms  re   spc  non  ee   eob  rs   and  grpc grpo lit  lita         dtgc dtgo opt  or   pero plus rep  rni  seq  refc  */tk03 []={TK1 ,TK1 ,CO1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,         TK1 ,TK1 ,TK1 ,TK1 ,ER1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 },/*tk1*/tk03a[]={INV_,INV_,NAS_,NOP_,NOP_,SYS_,EOF_,GET_,RS_ ,INV_,INV_,INV_,INV_,INV_,         INV_,INV_,INV_,INV_,NOP_,INV_,INV_,INV_,INV_,INV_},co03 []={TK1 ,TK1 ,TK1 ,CO1 ,CO1 ,CO1 ,CO1 ,CO1 ,CO1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,         TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 },/*co1*/co03a[]={INV_,INV_,INV_,NOP_,NOP_,SYS_,EE_ ,GET_,RS_ ,NOP_,GRPE,INV_,INV_,INV_,         INV_,INV_,INV_,NOP_,INV_,INV_,INV_,INV_,NOP_,INV_},er03 []={TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,ER1 ,TK1 ,ER1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,         TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 ,TK1 },/*er1*/er03a[]={PCI_,PCI_,PER_,PCI_,PCI_,SYS_,PCI_,GET_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,         PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_,PCI_},*grnmtab[] = {tk03, tk03a, co03, co03a, er03, er03a};struct parse pcbgrnm = {"GRNM", lexgrp, grnmtab, 0, 0, 0, 0};#undef TK1#undef CO1#undef ER1/* PCBREF: State and action table to find the end of entity, parameter entity,           and character references.  The opening delimiter and name           have already been found; the parse determines whether the           tokenization of the name ended normally and processes the REFC.*//* Symbols for state names (end with a number). */#define ER5     0   /* Handle REFC or other entity reference termination. */#define ER6     2   /* Return to caller and reset state for next call. */static UNCH/*       bit  nmc  nms  re   spc  non  ee   eob  rs   and  grpc grpo lit  lita         dtgc dtgo opt  or   pero plus rep  rni  seq  refc */er05 []={ER5 ,ER6 ,ER6 ,ER6 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,         ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER6 },/*er5*/er05a[]={RCR_,LEN_,LEN_,NOP_,RCR_,SYS_,RCR_,GET_,RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,         RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,NOP_},er06 []={ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,         ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 ,ER5 },/*er6*/er06a[]={RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,         RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,RCR_,RCR_},*reftab[]={er05, er05a, er06, er06a};struct parse pcbref = {"ENTREF", lexgrp, reftab, 0, 0, 0, 0};#undef ER5#undef ER6/*Use (typical)           Name   Ending  Chsw References RS   RE   SEPParameter literal       LITPC  LIT/A   OK   Parm,Char  RSM_ LAM_ LAM_     Data tag template                 NOSystem ID               LITC   LIT/A   n/a  none       RSM_ LAM_ LAM_     Processing instruction    PICAttribute value         LITRV  LIT/A   NO   Gen,Char   RS_  FUN_ FUN_Minimum literal         LITV   LIT/A   n/a  none       RS_  FUN_ MLE_*//* PCBLITP: Literal parse with parameter and character references;            no function character translation.*//* Symbols for state names (end with a number). */#define DA0     0   /* Data in buffer. */#define ER0     2   /* ERO found. */#define CR0     4   /* CRO found (ER0, RNI). */#define PR0     6   /* PRO found (for PCBLITP). */static UNCH/*       free num  min  nms  spc  non  ee   eob  rs   re   sep  cde  nsc  ero         mdo  msc  mso  pero rni  tagc tago litc */da13 []={DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,ER0 ,         DA0 ,DA0 ,DA0 ,PR0 ,DA0 ,DA0 ,DA0 ,DA0 },/*da3*/da13a[]={MLA_,MLA_,MLA_,MLA_,MLA_,NON_,EE_ ,GET_,RSM_,MLA_,MLA_,MLA_,NSC_,NOP_,         MLA_,MLA_,MLA_,NOP_,MLA_,MLA_,MLA_,TER_},er13 []={DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,ER0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,         DA0 ,DA0 ,DA0 ,DA0 ,CR0 ,DA0 ,DA0 ,DA0 },/*er3*/er13a[]={LPR_,LPR_,LPR_,LPR_,LPR_,LPR_,LPR_,GET_,LPR_,LPR_,LPR_,LPR_,LPR_,LPR_,         LPR_,LPR_,LPR_,LPR_,NOP_,LPR_,LPR_,LPR_},cr13 []={DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,CR0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,         DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 },/*cr3*/cr13a[]={LP2_,CRN_,LP2_,CRA_,LP2_,LP2_,LP2_,GET_,LP2_,LP2_,LP2_,LP2_,LP2_,LP2_,         LP2_,LP2_,LP2_,LP2_,LP2_,LP2_,LP2_,LP2_},pr13 []={DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,PR0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,         DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 },/*pr3*/pr13a[]={LPR_,LPR_,LPR_,PEX_,LPR_,LPR_,LPR_,GET_,LPR_,LPR_,LPR_,LPR_,LPR_,LPR_,         LPR_,LPR_,LPR_,LPR_,LPR_,LPR_,LPR_,LPR_},*litptab[] = {da13, da13a, er13, er13a, cr13, cr13a, pr13, pr13a};struct parse pcblitp = {"LITP", lexlms, litptab, 0, 0, 0, 0};#undef DA0#undef ER0#undef CR0#undef PR0/* PCBLITC: Literal parse; no references; no function char translation.            Used for character data (system data).*//* Symbols for state names (end with a number). */#define DA0     0   /* Data in buffer. */static UNCH/*      free num  min  nms  spc  non  ee   eob  rs   re   sep  cde  nsc  ero        mdo  msc  mso  pero rni  tagc tago litc */da2 []={DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,        DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 ,DA0 },/*da2*/da2a[]={MLA_,MLA_,MLA_,MLA_,MLA_,SYS_,EOF_,GET_,RSM_,MLA_,MLA_,MLA_,SYS_,MLA_,        MLA_,MLA_,MLA_,MLA_,MLA_,MLA_,MLA_,TER_},*litctab[] = {da2, da2a};struct parse pcblitc = {"LITC", lexlms, litctab, 0, 0, 0, 0};#undef DA0/* PCBLITR: Attribute value parse; general and character references;            function chars are translated.*//* Symbols for state names (end with a number). */#define DA0     0   /* Data in buffer. */#define ER0     2   /* ERO found. */#define CR0     4   /* CRO found (ER0, RNI). */static UNCH/*       free num  min  nms  spc  non  ee   eob  rs   re   sep  cde  nsc  ero

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -