Exemplo n.º 1
0
function parse_xml($html)
{
    $parts = explode("<story", $html);
    array_shift($parts);
    $items = array();
    for ($i = 0; $i < count($parts); $i++) {
        $item = array();
        $item["type"] = "xml_story";
        $item["title"] = extract_raw_tag($parts[$i], "title");
        $item["title"] = html_decode($item["title"]);
        $item["title"] = html_decode($item["title"]);
        $item["title"] = replace_ctrl_chars($item["title"], " ");
        $item["title"] = str_replace("  ", " ", $item["title"]);
        $url = str_replace("&amp;", "&", strip_ctrl_chars(extract_raw_tag($parts[$i], "url")));
        term_echo("*** raw story url: " . $url);
        $item["url"] = get_redirected_url($url);
        $item["timestamp"] = time();
        if ($item["title"] === False or $item["url"] === False) {
            continue;
        }
        $items[] = $item;
    }
    return $items;
}
Exemplo n.º 2
0
 }
 $details = extract_text($parts[$j], "<div class=\"details\">", "<span class=\"otherdetails\"");
 $details = strip_tags($details);
 $details = substr(clean_text($details), 3);
 $user = $details;
 $uid = 0;
 $c1 = strpos($details, "(");
 $c2 = strpos($details, ")");
 if ($c1 !== False and $c2 !== False) {
     if ($c1 < $c2 and $c2 == strlen($details) - 1) {
         $user = trim(substr($details, 0, $c1 - 1));
         $uid = substr($details, $c1 + 1, $c2 - $c1 - 1);
     }
 }
 $url = "http://soylentnews.org/comments.pl?sid={$sid}&cid={$cid}";
 $pid_html = strip_ctrl_chars($parts[$j]);
 $pid_html = str_replace(" ", "", $pid_html);
 $pid_delim1 = "ReplytoThis</a></b></p></span><spanclass=\"nbutton\"><p><b><ahref=\"//soylentnews.org/comments.pl?sid={$sid}&amp;threshold=-1&amp;commentsort=0&amp;mode=flat&amp;cid=";
 $pid_delim2 = "\">Parent";
 $pid_test = extract_text($pid_html, $pid_delim1, $pid_delim2);
 $pid = "";
 $parent_url = "";
 if ($pid_test !== False) {
     $pid = $pid_test;
     $parent_url = "http://soylentnews.org/comments.pl?sid={$sid}&cid={$pid}";
 }
 $subject_delim1 = "<h4><a name=\"{$cid}\">";
 $subject_delim2 = "</a>";
 $subject = extract_text($parts[$j], $subject_delim1, $subject_delim2);
 $subject = trim(strip_tags($subject));
 $subject = str_replace("  ", " ", $subject);