今天王哥让我手动添加视频到自己公司的网站上,因为采集功能坏掉了,所以只能手动添加了。我想是不是我应该做一个类似采集的程序呢?自己就会php,而且早就有用php做一个采集程序的想法,自己的想法就是用php的文件函数读去url上的内容,然后根据标签截取想要的内容,趁着王哥出去办事去了,我偷偷的写了下,
这段程序是首先读取一个目录的页面,然后把里面的视频链接添加到一个数组中,然后再遍历数组,读取里面的内容,然后在用字符串函数截取自己想要的那段内容,当然了,这段程序没有通用性,我只是根据一个视频网站的html源代码做的,也只能用在这个网站上。
顺便贴下这个网址:http://u.pomoho.com/lfw(这里面有很多分类栏目,社会,娱乐,游戏,其他等等,输入这些链接就能读取里面的视频的标题和视频,视频是由一个div包着的)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type = "text/css">
*{
margin:0;
padding:0;
}
body{
background-color:#dfdfdf;
text-align:center;
}
.con{
width:1000px;
height:120px;
}
.h{
width:400px;
}
.r{
width:500px;
height:50px;
margin:5px 0;
}
.b{
width:1000px;
margin:0 auto;
}
</style>
<script type = "text/javascript">
function copy(obj){
window.clipboardData.setData("Text",obj.value);
alert("Success!");
}
function check(){
$o = document.getElementById("url");
if($o.value){
document.getElementById("form1").submit();
}else{
alert("不能为空!");
}
}
</script>
</head>
<body>
<div class = "r">
<form method = "post" id = "form1" action = "./index.php" onsubmit = "return check();">
请输入网址:<input type = "text" name = "url" id = "url"/> <input type = "submit" value = "OK" />
</form>
</div>
<?php
if(isset($_POST['url'])){
echo "<div class = 'b'><table border = '1' width = '100%'>";
$url = $_POST['url'];
//存放视频url的数组
$arr_url = array();
$f = file_get_contents($url);
$str = strstr($f,"<div class=\"bmh_sp_pic\">");
$pos = 0;
$flag = true;
while($flag){
$pos = stripos($str,"<a href=\"http://u.baomihua.com/lfw/",$pos);
if($pos == false){
$flag = false;
}
$str = substr($str,$pos);
$end_pos = stripos($str,"target=_blank");
$s = substr($str,0,$end_pos -1);
$s = substr($s,8);
array_push($arr_url,$s);
//$d += substr($str,0,$end_pos-1);
$str = substr($str,$end_pos-1);
//echo $str;
}
$arr_url = array_unique($arr_url);
for( $m = 0; $m < count($arr_url);$m++){
$temp = $arr_url[$m];
$s = trim($temp,"\"");
$v = @file_get_contents($s);
//找标题
$p = stripos($v,"<h2 style=\"display:none\">");
$p2 = stripos($v,"</h2>",$p);
$t = substr($v,$p+25,$p2-$p);
$t = substr($t,0,strrpos($t,"</h2>"));
echo "<tr><td style = 'background-color:#8d8d8d;'><input type = \"text\" value = \"{$t}\" onclick = \"copy(this);\" class = 'h'/></td><td>{$s}</td></tr>";
$pos = stripos($v,"class=\"video\"");
$str2 =substr($v,$pos - 5);
$end_pos = stripos($str2,"</div>");
$str2 = substr($str2,0,$end_pos+6);
$sss = htmlspecialchars($str2);
echo "<tr><td colspan = '2'><textarea onclick = \"copy(this)\" class = 'con'>{$sss}</textarea></td></tr>";
}
echo "</table></div>";
}
?>
</body>
</html>