我在这里尝试解析网页并获取内容.. http://www.reuters.com/finance/stocks/companyOfficers?symbol=AOS
这是我的code进行解析以及附加的样本结果。
现在,如果您在示例结果数组中看到,则在描述字段中,很少有细节格式无效..例如。原始的'描述'包含(“Bemis”)在网页中,但在解析结果中显示为(├ó┬Ç┬£Bemis├ó┬Ç┬¥)(参见样本结果中的描述字段)。检查网址的源代码并尝试搜索“Bemis”。可能是什么原因......如何解决它。我也试过
$html_source = str_replace('“','"',$html_source);
$html_source = str_replace('”','"',$html_source);
但无法正确使用..帮我修改代码,以便提供正确的解析结果。
答案 0 :(得分:1)
在代码的第5行之后添加此代码对我有用:
// First, replace UTF-8 characters.
$html_source = str_replace(
array("\xe2\x80\x98", "\xe2\x80\x99", "\xe2\x80\x9c", "\xe2\x80\x9d", "\xe2\x80\x93", "\xe2\x80\x94", "\xe2\x80\xa6"),
array("'", "'", '"', '"', '-', '--', '...'),
$html_source);
// Next, replace their Windows-1252 equivalents.
$html_source = str_replace(
array(chr(145), chr(146), chr(147), chr(148), chr(150), chr(151), chr(133)),
array("'", "'", '"', '"', '-', '--', '...'),
$html_source);
感谢这个SO主题中的@Wolfe:Devilish curly quotes