如何使用PHP从HTML中提取或过滤信息?
我每天都收到一封包含html文档的电子邮件,其中包含前一天的统计数据。这个HTML很难为所有用户阅读,所以我想用php脚本“自动”从这个表中提取信息。我将把源代码放在这里,在这里我只是编辑出敏感信息。这些行是“无止境的”,所以我只包括几行,这样你就可以看到这个想法 为了让您了解我想要或需要什么,我将大量信息捆绑在一起,并使其在php中“可搜索”,这样我就可以创建自己的自定义信息视图。例如,如果那天有3个卖家,而不是50行商品,那么应该是3行,上面写的是商品数量,而不是每件商品如何使用PHP从HTML中提取或过滤信息?,php,html,filter,Php,Html,Filter,我每天都收到一封包含html文档的电子邮件,其中包含前一天的统计数据。这个HTML很难为所有用户阅读,所以我想用php脚本“自动”从这个表中提取信息。我将把源代码放在这里,在这里我只是编辑出敏感信息。这些行是“无止境的”,所以我只包括几行,这样你就可以看到这个想法 为了让您了解我想要或需要什么,我将大量信息捆绑在一起,并使其在php中“可搜索”,这样我就可以创建自己的自定义信息视图。例如,如果那天有3个卖家,而不是50行商品,那么应该是3行,上面写的是商品数量,而不是每件商品 <html
<html dir="ltr"><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8"><title>Outdata of rapport</title> <style>table.list { border-collapse: collapse; }</style> </head> <!script!> <body bgcolor="#E8EAD8"> <blockquote> <p align=left><font size=+2><b> </b></font></p> <p align=left> <font style="font-family:monospaced"> <table class="list" border=1 cellspacing=0 cellpadding=1 rules=groups borderColor=black ><colgroup><colgroup> <tbody><tr><td style= background:#5dcbfd ><font face="courier new" size="2"><nobr id=l0002003>Data statistic </nobr></font></td> <td style= background:#5dcbfd ><font face="courier new" size="2"><nobr id=l0002030>Numbers</nobr></font></td> </tr> <tbody><tr><td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0004003>Transfered posts </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0004030> 140</nobr></font></td> </tr> <tr><td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0005003>Defined sum lines</nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0005030> 1</nobr></font></td> </tr> <tbody></tbody></table> <table class="list" border=1 cellspacing=0 cellpadding=1 rules=groups borderColor=black ><colgroup><colgroup><colgroup><colgroup><colgroup><colgroup><colgroup><colgroup><colgroup><colgroup><colgroup> <tbody><tr><td style= background:#5dcbfd ><font face="courier new" size="2"><nobr id=l0008003> Date </nobr></font></td> <td style= background:#5dcbfd ><font face="courier new" size="2"><nobr id=l0008015>Group</nobr></font></td> <td style= background:#5dcbfd ><font face="courier new" size="2"><nobr id=l0008026>Varegrp.betegn. </nobr></font></td> <td style= background:#5dcbfd ><font face="courier new" size="2"><nobr id=l0008047>Ware</nobr></font></td> <td style= background:#5dcbfd ><font face="courier new" size="2"><nobr id=l0008056>Ware text </nobr></font></td> <td style= background:#5dcbfd ><font face="courier new" size="2"><nobr id=l0008097>Seller </nobr></font></td> <td style= background:#5dcbfd ><font face="courier new" size="2"><nobr id=l0008106>Name seller </nobr></font></td> <td style= background:#5dcbfd ><font face="courier new" size="2"><nobr id=l0008132>Fil.</nobr></font></td> <td style= background:#5dcbfd ><font face="courier new" size="2"><nobr id=l0008137>Name on filial </nobr></font></td> <td style= background:#5dcbfd ><font face="courier new" size="2"><nobr id=l0008168> DB</nobr></font></td> <td style= background:#5dcbfd ><font face="courier new" size="2"><nobr id=l0008179>NumPos</nobr></font></td> </tr> <tbody><tr><td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0010003> 30.04.2015</nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0010015>030001 </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0010026>Mobile </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0010047>10038 </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0010056> 4G, </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0010097>99999999</nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0010106>Seller Two </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0010132>0171</nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0010137>Store </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0010168> 1.000,40 </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0010179> 2 </nobr></font></td> </tr> <tr><td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0011003> 30.04.2015</nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0011015>030001 </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0011026>Mobile </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0011047>10038 </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0011056> 4G, </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0011097>99999999</nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0011106>Seller One </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0011132>0171</nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0011137>Store </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0011168> 480,20 </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0011179> 1 </nobr></font></td> </tr> <tr><td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0012003> 30.04.2015</nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0012015>030306 </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0012026>Protection Mobile </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0012047>10793 </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0012056> Wallet Case for Galaxy S5 bl</nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0012097>99999999</nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0012106>Seller One </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0012132>0171</nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0012137>Store </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0012168> 195,20 </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0012179> 1 </nobr></font></td> </tr> <tr><td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0013003> 30.04.2015</nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0013015>030306 </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0013026>Protection Mobile </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0013047>10794 </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0013056> Slim Wallet Case Galaxy S5, Brown</nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0013097>99999999</nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0013106>Seller Two </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0013132>0171</nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0013137>Store </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0013168> 190,20 </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0013179> 1 </nobr></font></td> </tr> <tr><td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0014003> 30.04.2015</nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0014015>030304 </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0014026>Charger Mobile </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0014047>10865 </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0014056> TravelCharger Micro USB, Black </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0014097>99999999</nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0014106>Seller One </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0014132>0171</nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0014137>Store </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0014168> 180,20 </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0014179> 1 </nobr></font></td> </tr> <tr><td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0015003> 30.04.2015</nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0015015>030306 </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0015026>Protection Mobile </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0015047>11092 </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0015056> Slim Wallet Case f Xperia Z3 Comp</nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0015097>99999999</nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0015106>Seller One </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0015132>0171</nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0015137>Store </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0015168> 250,20 </nobr></font></td> <td style= background:#d7ecf4 ><font face="courier new" size="2"><nobr id=l0015179> 1 </nobr></font></td> </tr> <tr><td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0016003> 30.04.2015</nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0016015>030306 </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0016026>Protection Mobile </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0016047>11099 </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0016056> Slim Wallet Case f Xperia Z3 blac</nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0016097>99999999</nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0016106>Seller One </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0016132>0171</nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0016137>Store </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0016168> 170,20 </nobr></font></td> <td style= background:#eef9ff ><font face="courier new" size="2"><nobr id=l0016179> 1 </nobr></font></td> </tr><tbody></tbody></table> </p> </blockquote> </body> </html>
Outdata of report table.list{border collapse:collapse;} 数据统计数字已转移到140个定义的合计行1日期组Varegrp.betegn。货物文字卖方名称卖方文件。子代DB NumPos 30.04.2015 030001移动10038 4G上的名称,9999999卖方二0171商店1.000,40 2 30.04.2015 030001移动10038 4G,9999999卖方一号0171商店480,20 1 30.04.2015 030306保护手机10793 Galaxy S5钱包箱bl 999999卖方一号0171商店195,20 1 30.04.2015 030306保护手机10794薄型钱包箱Galaxy S5,Brown 9999999卖家二0171商店190,20 1 30.04.2015 030304充电器手机10865 TravelCharger Micro USB,黑色9999999卖方一0171商店180,20 1 30.04.2015 030306保护手机11092 Xperia Z3公司的薄型钱包箱9999999卖方一0171商店250,20 1 30.04.2015 030306保护手机11099 Xperia Z3公司的薄型钱包箱blac9999999999卖方一号0171商店170,20 1
使用
另外,请查看以下答案:因此,您从外部来源收到一封无法自己编辑的电子邮件,并希望重新格式化该电子邮件,然后发送给您的用户?是的,我收到一封无法编辑的电子邮件。但是不,它不会被转发。我会用stats视图创建一个静态网页。我说你正在尝试自动获取此电子邮件并为你创建一个视图,然后你需要用php查看IMAP,并检查该电子邮件中的模式,你可以在php脚本中查找该模式。当您准备好获取电子邮件的代码时,您需要设置一个CRON作业,每天早上左右检查此电子邮件。正如前面提到的,这里有一些东西可以让您开始使用,您首先必须使用IMAP或其他流程将电子邮件输入php脚本。一旦出现,使用DOMDocument解析HTML,然后从相应的HTML节点提取数据。这看起来不错,但有没有办法将所有“TD”排序到表中的标题中?看起来很难为所有这些信息创建解析器。