PhP使用嵌入式JavaScript从HTML中提取striing
PhP extracting striing from HTML with embedded JavaScript
我正试图从网页中提取此数据(MARK PATER(,我希望它是字符串,而不是超链接。这是我的代码:
当我回显时,这是我在浏览器上得到的结果:马克·帕特尔。我无法将此值提取为字符串。。。这是一个HYPERLINK。当我打开源代码时,我会得到这个:
<a class="filter_list" href="" onclick="return fillFilterForm(document.formFilter1, 'nation_party_name', 'MARK PATGHL');"><font face="Verdana" size="1" color="BLACK">MARK PATERÂ Â </font></a>string(0) ""
以下是echo$html:的部分源代码
<tr >
<td align="justify" width="5%" nowrap><font face="Verdana" size="1">
*
<a class="list_2" href="details.asp
?doc_id=2&index=0&file_num=07">View</a> </font>
</td>
<td width="20%" align="justify" ><a class="filter_list" href="" onClick="return fillFilterForm(document.formFilter1, 'party_name', 'NEW YORK GORDI’);”><font face="Verdana" size="1" color="BLACK">NEW YORK GORDI </font></td>
<td width="15%" align="justify" nowrap><a class="filter_list" href="" onClick="return fillFilterForm(document.formFilter1, ’Name’, ‘MARK PATER );”><font face="Verdana" size="1" color="BLACK">MARK PATER </font></td>
代码:
$html = file_get_html($link);
//echo htmlspecialchars ($html);
// a new dom object
$dom = new domDocument;
// load the html into the object
$dom->loadHTML($html);
$tables = $dom->getElementsByTagName('td');
echo get_inner_html($tables->item(26));
function get_inner_html( $node )
{
$innerHTML= '';
$children = $node->childNodes;
foreach ($children as $child)
{
$innerHTML .= $child->ownerDocument->saveXML( $child );
}
return $innerHTML;
}
enter code here
尝试使用正则表达式
尝试构建正则表达式以从HTML中提取字符串。
使用SimpleXML/DOM在HTML中循环有时是一个非常令人头疼的过程。
您案例的样本
$html = "<tr >
<td align='"justify'" width='"5%'" nowrap><font face='"Verdana'" size='"1'">
*
<a class='"list_2'" href='"details.asp?doc_id=2&index=0&file_num=07'">View</a> </font>
</td>
<td width='"20%'" align='"justify'" ><a class='"filter_list'" href='"'" onClick='"return fillFilterForm(document.formFilter1, 'party_name', 'NEW YORK GORDI';);'"><font face='"Verdana'" size='"1'" color='"BLACK'">NEW YORK GORDI </font></td>
<td width='"15%'" align='"justify'" nowrap><a class='"filter_list'" href='"'" onClick='"return fillFilterForm(document.formFilter1, 'Name', 'MARK PATER';);'"><font face='"Verdana'" size='"1'" color='"BLACK'">MARK PATER </font></td>";
preg_match_all('/(?:<td.+><a.+><font.+>)(['w's]+)(?:( )+<'/font><'/td>)/', $html, $filtered);
print_r( $filtered[1] );
//Output: Array ( [0] => NEW YORK GORDI [1] => MARK PATER )
相关文章:
- HTML页面如何提取通过表单传递的参数
- 使用javascript从HTML网页中提取图像url
- 如何从HTML下拉菜单中提取值
- 如何每秒从一个变量中提取一定次数的javascript/html
- 更换163;使用javascript从html文本区域中提取字符
- 正则表达式,用于从html格式的字符串中提取文本
- 从HTML代码中提取数据
- 使用JavaScript或AJAX从HTML表单中提取数据,然后将其传递给PHP
- 如何在HTML源代码中提取javascript变量
- 使用'从HTML表中提取行的内容<tr onclick=alertContents()>'
- 从html标记格式的字符串中提取键值对
- jQuery-数据提取问题(html遍历)
- 用于提取 HTML 标记子元素的正则表达式
- 从导入的 HTML/JS 文件中提取变量
- 使用JavaScript从HTML字符串中提取文本
- 如何将jquery ajax数据提取为html
- 如何从html中提取javascript
- 从html文件中的js中提取链接
- 从Html中提取特定值
- Angular将所有头文件html提取到一个文件中