Wil*_*ill 12 c# screen-scraping
我已经完成了屏幕抓取我们的一个遗留Web应用程序的任务,从代码中提取某些数据.数据被格式化并且"应该"每次都显示完全相同.我只是不确定如何去做这件事.这是一个包含页眉和页脚导航的完整html文件,但在这一切的中间是我需要的数据.
我需要提取公司名称值,联系人姓名,电话,电子邮件地址等.
以下是代码的示例:
...html above here
<br /><br />
<table cellpadding="0" cellspacing="12" border="0">
<tr>
<td valign="top" align="center">
<!-- Company Info -->
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="black">
<table cellspacing="1" cellpadding="0" border="0" width="370">
<tr>
<th>ABC INDUSTRIES</th>
</tr>
<tr>
<td class="search">
<table cellpadding="5" cellspacing="0" border="0" width="100%">
<tr>
<td>
<table cellpadding="1" cellspacing="0" border="0" width="100%">
<tr>
<td align="center" colspan="2"><hr></td>
</tr>
<tr>
<td align="right" nowrap><b><font color="FF0000">Contact Person <img src="/images/icon_contact.gif" align="absmiddle"> :</font></b></td>
<td align="left" width="100%"> Joe Smith</td>
</tr>
<tr>
<td align="right" nowrap><b><font color="FF0000">Phone Number <img src="/images/icon_phone.gif" align="absmiddle"> :</font></b></td>
<td align="left" width="100%"> 555-555-5555</td>
</tr>
<tr>
<td align="right" nowrap><b><font color="FF0000">E-mail Address <img src="/images/icon_email.gif" align="absmiddle"> :</font></b></td>
<td align="left" width="100%"> <a HREF="mailto:joe@joe.com">joe@joe.com</a></td>
</tr>
more...
Run Code Online (Sandbox Code Playgroud)
屏幕上有更多代码,我需要提取不同的表结构.
Dav*_*vid 23
您是否只是在寻找有关如何实现这一目标的建议?该HTML敏捷性包很可能将是DOM一般解析你最好的选择.可能会有一些修补和试错来维持你的屏幕刮擦(通常有这种事情),但该库非常适合解析HTML.
从技术上讲,任何XML解析(甚至是原生的LINQ to XML)都应该可以解决问题,但是网站有一个不良格式的恶习,所以你可能会遇到一些小麻烦.