zoukankan      html  css  js  c++  java
  • 获取笑话集网站笑话数据的后台代码

    最近做了一个app用于获取笑话集网站的数据,为了方便开发。我先用PHP对数据进行了预处理

    代码如下

    <?php
    include_once("writeLog.php");
    class Joke
    {
    	var $jokeText = "";
    	var $urlNext = "";
    	var $urlPrv = "";
    	var $urlBase = "http://wap.jokeji.cn/";
    	
    	function __construct()
    	{
    		
    	}
    	function getContent($url){
    		MyLog("url.log",$url);
    		$html = file_get_contents(iconv("gb2312","UTF-8",$url));
    		$begin = stripos($html,"<div class="joketxt">") + 23;
    		$end = stripos($html,"<script",$begin);
    		$r = substr($html, $begin, $end - $begin);
    		$r = str_ireplace("<p>","",$r);
    		$r = str_ireplace("</p>","",$r);
    		$r = str_ireplace("<br>","
    ",$r);
    		$this->jokeText = $r;
    		$begin = stripos($html,"上一篇:<a");
    		if ($begin != false)
    		{
    			$begin += 27;
    			$end = stripos($html,""",$begin);
    			$this->urlNext = substr($html, $begin, $end - $begin);
    		}
    		$begin = stripos($html,"下一篇:<a");
    		if ($begin != false)
    		{
    			$begin = $begin + 27;
    			$end = stripos($html,""",$begin);
    			$this->urlPrv = substr($html, $begin, $end - $begin);
    		}
    	}
    	
    	function getFirstLink()
    	{
    		$html = file_get_contents($this->urlBase);
    		$begin = stripos($html,"<div class="list">") + 42;
    		$end = stripos($html,""",$begin);
    		$r = substr($html, $begin, $end - $begin);
    		return $r;
    	}
    	
    	function getJoke($u){
    		if ($u == "")
    		{
    			$url = $this->urlBase.$this->getFirstLink();
    		}
    		else
    		{
    			$url = $this->urlBase.urlencode($u);
    		}
    		$this->getContent($url);
    		
    		$joke = array();
    		$joke["content"] = $this->jokeText;
    		$joke["next"] = $this->urlNext;
    		$joke["previous"] = $this->urlPrv;
    		return $joke;
    	}
    		
    }
  • 相关阅读:
    456. 132 Pattern
    496. Next Greater Element I
    503. Next Greater Element II
    341. Flatten Nested List Iterator
    232. Implement Queue using Stacks
    225. Implement Stack using Queues
    208. Implement Trie (Prefix Tree)
    思考--为何早晨型人更容易成功
    Listary的使用
    【运维】虚拟机如何安装CentOS
  • 原文地址:https://www.cnblogs.com/wanghongxu/p/3974958.html
Copyright © 2011-2022 走看看