我试图用class =" msgsource"来获取所有span元素。从我的网站的HTML代码,然后将其发送到浏览器下载为.txt文件。这就是我所拥有的,但它下载了一个空文本文件
<?php
// parse div content
include('simple_html_dom.php');
$html = file_get_html('http://www.example.com');
$code = $html->find('[@class="msgsource"]');
$content = $code->outertext;
// send content to browser
header("Content-Type: application/force-download");
header("Content-Length: " . sizeof($content));
header('Content-Disposition: attachment; filename=mylog.txt');
echo $content;
?>
答案 0 :(得分:0)
如果您正在使用我正在考虑的库,请查看此http://simplehtmldom.sourceforge.net/manual.htm,找到您更改的具有类的元素,找到这样的参数
private void setButtonRowListeners(final ButtonHolder buttonHolder) {
buttonHolder.yes.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
buttonHolder.yes.setBackgroundColor(mContext.getResources().getColor(R.color.colorAccent));
buttonHolder.yes.setTextColor(mContext.getResources().getColor(R.color.white));
buttonHolder.no.setBackgroundColor(mContext.getResources().getColor(R.color.lighterGray));
buttonHolder.no.setTextColor(mContext.getResources().getColor(R.color.mediumGray));
buttonHolder.subQuestion.setVisibility(View.VISIBLE);
}
});
buttonHolder.no.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
buttonHolder.no.setBackgroundColor(mContext.getResources().getColor(R.color.colorAccent));
buttonHolder.no.setTextColor(mContext.getResources().getColor(R.color.white));
buttonHolder.yes.setBackgroundColor(mContext.getResources().getColor(R.color.lighterGray));
buttonHolder.yes.setTextColor(mContext.getResources().getColor(R.color.mediumGray));
buttonHolder.subQuestion.setVisibility(View.GONE);
}
});
}
您可以找到如何从内容中找到所有跨度的示例。
答案 1 :(得分:0)
<?php
// parse div content
include('simple_html_dom.php');
$html = file_get_html('http://simplehtmldom.sourceforge.net/manual.htm');
$code = $html->find('span[class=comment]');
echo count($code);
echo $code[1];
?>
使用此格式查找html元素:
$code = $html->find('span[class=comment]');
结果将作为数组存储在$ code中,然后使用它们的索引访问各个数组元素(html元素文本内容)。
答案 2 :(得分:0)
让我们从一个简单的案例开始,它表明它应该有效:
$str = <<<EOF
<div class="msgsource">foo</div>
<div>bar</div>
<div class="msgsource">baz</div>
EOF;
$html = str_get_html($str);
$content = '';
foreach($html->find('.msgsource') as $code){
$content .= $code->outertext . "\n";
}
echo $content;
从那里,你可以倒退,试图找出你的情况有什么不妥。