怎样把html里的内容提取到下面这种方式21:30,首都国际机场,23:55,江北国际机场,四川航空,3U8834,319,50,40,全价,¥1560,经济舱
<tbody data="2010-8-27 6:40:00|2010-8-27 8:50:00|PEK|PVG|CA|M|900||7|7|1,2,32,30|8.0">
<tr>
<td>
<p class="time_from"><strong>06:40</strong>出发</p>
<p class="time_to"><span>08:50</span>到达</p>
</td>
<td>
<p>首都国际机场</p>
<p>浦东国际机场</p>
</td>
<td class="flight_company">
<p><span class="pubFlights_ca flight_name">中国国航</span><span class="flight_airline">CA1871 </span></p>
<p class="flight_no">机型:<span mod_jmpinfo_page="fltDomestic_planeType.asp?CraftType=738" mod="jmpInfo" class="base_txtdiv">738</span>经济舱</p>
</td>
<td>
<p><strong class="base_price01">¥900</strong><span class="base_txtdiv" mod="jmpInfo" mod_jmpinfo_page="default_normal.asp" mod_jmpinfo_content="说明|经济舱全价:1130<BR/>H :经济舱">8.0折/H</span> </p>
<p><a onclick="showMore(this,GetShowAllSubclassParameter('CA1871 ',''))" class="show_fold" href="###">所有价格</a><span class="base_txtdiv" mod="jmpInfo" mod_jmpinfo_page="flight_policy_tab" mod_jmpinfo_content="退改签规定|同等舱位免费更改一次,再次更改需收取票面价10%的更改费,收费更改请到国航直属售票处办理。|需收取票面价10%的退票费。|不得签转。||">退改签</span></p>
</td>
<td>
<input type="button" class="btn_book" value="预 订" onclick="SelectFlight('CA1871', 'H', '900', 'NormalPrice', '','False')" />
<span mod="jmpInfo" mod_jmpinfo_page="default_normal" mod_jmpinfo_content="说明|" class="icon_gift" style="visibility: hidden"> </span>
</td>
<td>
<div style="width: 124px;">
</div>
</td>
</tr>
<tr>
<td class="fltlist_details" colspan="6">
<p>机建+燃油:50+40元 | 飞行时间:2小时10分</p>
</td>
</tr>
</tbody>
<tbody data="2010-8-27 6:40:00|2010-8-27 8:50:00|PEK|PVG|CA|M|900||7|7|1,2,32,30|8.0">
<tr>
<td>
<p class="time_from"><strong>06:40</strong>出发</p>
<p class="time_to"><span>08:50</span>到达</p>
</td>
<td>
<p>首都国际机场</p>
<p>浦东国际机场</p>
</td>
<td class="flight_company">
<p><span class="pubFlights_ca flight_name">中国国航</span><span class="flight_airline">CA1871 </span></p>
<p class="flight_no">机型:<span mod_jmpinfo_page="fltDomestic_planeType.asp?CraftType=738" mod="jmpInfo" class="base_txtdiv">738</span>经济舱</p>
</td>
<td>
<p><strong class="base_price01">¥900</strong><span class="base_txtdiv" mod="jmpInfo" mod_jmpinfo_page="default_normal.asp" mod_jmpinfo_content="说明|经济舱全价:1130<BR/>H :经济舱">8.0折/H</span> </p>
<p><a onclick="showMore(this,GetShowAllSubclassParameter('CA1871 ',''))" class="show_fold" href="###">所有价格</a><span class="base_txtdiv" mod="jmpInfo" mod_jmpinfo_page="flight_policy_tab" mod_jmpinfo_content="退改签规定|同等舱位免费更改一次,再次更改需收取票面价10%的更改费,收费更改请到国航直属售票处办理。|需收取票面价10%的退票费。|不得签转。||">退改签</span></p>
</td>
<td>
<input type="button" class="btn_book" value="预 订" onclick="SelectFlight('CA1871', 'H', '900', 'NormalPrice', '','False')" />
<span mod="jmpInfo" mod_jmpinfo_page="default_normal" mod_jmpinfo_content="说明|" class="icon_gift" style="visibility: hidden"> </span>
</td>
<td>
<div style="width: 124px;">
</div>
</td>
</tr>
<tr>
<td class="fltlist_details" colspan="6">
<p>机建+燃油:50+40元 | 飞行时间:2小时10分</p>
</td>
</tr>
</tbody>
所以我觉得可以根据css和tag_name做filter来取
还有像“<p>首都国际机场</p>”里面还没有属性,还有的属性不唯一,根本写不出来。“根据css和tag_name做filter来取”这种应该怎么写啊
程序员做程序员的事, 这种没有限制的程序是(目前)做不出来的实在要做的话,做一堆校验器,挨个校验输入的文本,比方说 有的校验器根据 tr里第一个td的第一个P的内容是以“出发”结束的; 有的校验器是根据 tr的第2个td的内容是xxxx机场。
通过校验器的判断,确定输入的文本是哪个格式的(基本上有段时间,某个页面的格式是固定的) 就用对应的分析器(就是具体进行数据提取的代码模块啦)来分析数据有一个格式的页面就加一个校验器和一个分析器
反正可扩展,总可以满足要求的
文本格式不固定没关系,我现在是里面的参数不会取
像这种“<p>机建+燃油:50+40元 | 飞行时间:2小时10分</p>”
我只要50 和40
”<p>首都国际机场</p><p>浦东国际机场</p>“这种应该根据什么条件判断。