时间:2021-07-01 10:21:17 帮助过:28人阅读
preg_match_all('|black" title="(.*?)"|i',$info,$m);
“甲子人文底蕴?美丽师大校园”摄影视频作品征集活动...
回复讨论(解决方案)
和你获取title是 一样的写一个正则就可以了
如果是获取一个样式页面 可以根据页面的标签 去获取
可以参考 写的非常简单 获取到的是一个数组 学习正则中
if (preg_match_all('/href="(.*)"/isU', $html, $match)) { print_r($match);}//匹配到的是 $match[1];自己看数组吧,当然你也可以把匹配条件弄得更详细点
和你获取title是 一样的写一个正则就可以了
如果是获取一个样式页面 可以根据页面的标签 去获取
可以参考 写的非常简单 获取到的是一个数组 学习正则中
我这样写不行的 preg_match_all('|black" href="(.*?)"|i',$info,$m);
preg_match_all('|black" href="(.*?)"|i s',$info,$m);
preg_match_all('|black" href="(.*?)"|i s',$info,$m);
Array ( [0] => Array ( ) [1] => Array ( ) ) 不行啊 没有得到 你的代码是什么?
$info=<<< TXT“甲子人文底蕴?美丽师大校园”摄影视频作品征集活动...
TXT;preg_match_all('|black" href="(.*?)"|is',$info,$m);print_r($m);
Array
(
[0] => Array
(
[0] => black" href="/Default.aspx?tabid=9597&ctl=Details&mid=19997&ItemID=128217&SkinSrc=[L]Skins/shangshida1_5/shangshida1_5&language=zh-CN"
)
[1] => Array
(
[0] => /Default.aspx?tabid=9597&ctl=Details&mid=19997&ItemID=128217&SkinSrc=[L]Skins/shangshida1_5/shangshida1_5&language=zh-CN
)
)
你的代码是什么?
$info=<<< TXT“甲子人文底蕴?美丽师大校园”摄影视频作品征集活动...
TXT;preg_match_all('|black" href="(.*?)"|is',$info,$m);print_r($m);
Array
(
[0] => Array
(
[0] => black" href="/Default.aspx?tabid=9597&ctl=Details&mid=19997&ItemID=128217&SkinSrc=[L]Skins/shangshida1_5/shangshida1_5&language=zh-CN"
)
[1] => Array
(
[0] => /Default.aspx?tabid=9597&ctl=Details&mid=19997&ItemID=128217&SkinSrc=[L]Skins/shangshida1_5/shangshida1_5&language=zh-CN
)
)
www.shnu.edu.cn这个是主页 我用你的代码
结果就是Array ( [0] => Array ( ) [1] => Array ( ) )
你的代码是什么?
$info=<<< TXT“甲子人文底蕴?美丽师大校园”摄影视频作品征集活动...
TXT;preg_match_all('|black" href="(.*?)"|is',$info,$m);print_r($m);
Array
(
[0] => Array
(
[0] => black" href="/Default.aspx?tabid=9597&ctl=Details&mid=19997&ItemID=128217&SkinSrc=[L]Skins/shangshida1_5/shangshida1_5&language=zh-CN"
)
[1] => Array
(
[0] => /Default.aspx?tabid=9597&ctl=Details&mid=19997&ItemID=128217&SkinSrc=[L]Skins/shangshida1_5/shangshida1_5&language=zh-CN
)
) 打算获取哪些链接的href? 这样写: preg_match_all('|black".+?href="(.*?)"|is',$info,$m); 可以获取所有满足条件的href。
打算获取哪些链接的href? 这样写: preg_match_all('|black".+?href="(.*?)"|is',$info,$m); 可以获取所有满足条件的href。
只要获取每个新闻的href
preg_match_all('|class="viewsblack".+?href="(.*?)"|is',$info,$m);print_r($m[1]);
preg_match_all('|class="viewsblack".+?href="(.*?)"|is',$info,$m);print_r($m[1]);
这样直接截取到的编码应该不是字符类型的吧
因为'Url' => "http://www.shnu.edu.cn".$n[1][0].""
这样输出整个网页 点击这个链接 还只是转到主页 并没有跳转到相应的新闻页面 不懂你的意思,贴出你的完整代码看看。
不懂你的意思,贴出你的完整代码看看。
"师大要闻 >>>>>>>>>>>>>>>点击进入首页", 'Description' =>'', 'PicUrl' => 'http://1.shnuzs.sinaapp.com/images/newsPic2.jpg', 'Url' => "http://xw.shnu.edu.cn/"); for ($i = 0; $i <= 7; $i++) { $news[] = array( 'Title' => $m[1][$i], 'Description' => '', 'PicUrl' => 'http://1.shnuzs.sinaapp.com/images/shnu.bmp', 'Url' => "http://www.shnu.edu.cn".$n[1][$i]."" ); } return $news;}?>
preg_match_all('|class="viewsblack".+?href="(.*?)"|is',$info, $n);
preg_match_all('|class="viewsblack".+?href="(.*?)"|is',$info, $n);
这个我源码上写的是对的
主要的问题是 'Url' => "http://www.shnu.edu.cn".$n[1][$i].""
这样网址不能连接在一块
每次点击后跳转的页面 只有 . 前面的 为什么不能连在一块?
print_r($n); 有不有值。
你把生成的链接的源码贴出来看看。
1、$getcontent = iconv("gb2312", "utf-8",$info);
这句没有作用,因为下面的处理中仍然是用的是 $info
2、
preg_match_all('|black" title="(.*?)"|i',$info,$m);
preg_match_all('|class="viewsblack".+?href="(.*?)"|is',$info, $m);
后面的 $m 把前面的 $m 覆盖了,所以后续代码中不可能得到正确的结果
$url = 'http://www.shnu.edu.cn/IndexPage.html'; //这儿填页面地址 $info=file_get_contents($url); header("Content-type: text/html; charset=utf-8"); preg_match_all('|black" title="(.*?)"|i',$info,$m); preg_match_all('|class="viewsblack".+?href="(.*?)"|is',$info,$n); $news=array(); $news[] = array('Title' => "师大要闻 >>>>>>>>>>>>>>>点击进入首页", 'Description' =>'', 'PicUrl' => 'http://1.shnuzs.sinaapp.com/images/newsPic2.jpg', 'Url' => "http://xw.shnu.edu.cn/"); for ($i = 0; $i <=7; $i++) { $news[] = array( 'Title' => $m[1][$i], 'Description' => '', 'PicUrl' => 'http://1.shnuzs.sinaapp.com/images/shnu.bmp', 'Url' => "http://www.shnu.edu.cn".$n[1][$i]."" ); }print_r($news);
Array( [0] => Array ( [Title] => 师大要闻 >>>>>>>>>>>>>>>点击进入首页 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/newsPic2.jpg [Url] => http://xw.shnu.edu.cn/ ) [1] => Array ( [Title] => 在调研思考中成长 中青年干部研修班交流课题调研成果 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132454&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [2] => Array ( [Title] => 我校积极推进奉贤区产学研协同创新工作 先进个人获表彰 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132443&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [3] => Array ( [Title] => 学校召开行政例会部署近期工作 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132442&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [4] => Array ( [Title] => 校领导率队赴上海大学学习考察信息化建设工作 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132441&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [5] => Array ( [Title] => 十篇论文获评学报(自然科学版)首届优秀论文 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132299&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [6] => Array ( [Title] => 我校世界电影研究中心师生入选上海国际电影节选片人 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132331&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [7] => Array ( [Title] => 我校召开2014年上海师范大学教育实习计划协调会 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132326&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [8] => Array ( [Title] => “多元文化?多彩世界”校外语综合能力大赛开幕 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132358&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ))
1、$getcontent = iconv("gb2312", "utf-8",$info);
这句没有作用,因为下面的处理中仍然是用的是 $info
2、
preg_match_all('|black" title="(.*?)"|i',$info,$m);
preg_match_all('|class="viewsblack".+?href="(.*?)"|is',$info, $m);
后面的 $m 把前面的 $m 覆盖了,所以后续代码中不可能得到正确的结果
$url = 'http://www.shnu.edu.cn/IndexPage.html'; //这儿填页面地址 $info=file_get_contents($url); header("Content-type: text/html; charset=utf-8"); preg_match_all('|black" title="(.*?)"|i',$info,$m); preg_match_all('|class="viewsblack".+?href="(.*?)"|is',$info,$n); $news=array(); $news[] = array('Title' => "师大要闻 >>>>>>>>>>>>>>>点击进入首页", 'Description' =>'', 'PicUrl' => 'http://1.shnuzs.sinaapp.com/images/newsPic2.jpg', 'Url' => "http://xw.shnu.edu.cn/"); for ($i = 0; $i <=7; $i++) { $news[] = array( 'Title' => $m[1][$i], 'Description' => '', 'PicUrl' => 'http://1.shnuzs.sinaapp.com/images/shnu.bmp', 'Url' => "http://www.shnu.edu.cn".$n[1][$i]."" ); }print_r($news);
Array( [0] => Array ( [Title] => 师大要闻 >>>>>>>>>>>>>>>点击进入首页 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/newsPic2.jpg [Url] => http://xw.shnu.edu.cn/ ) [1] => Array ( [Title] => 在调研思考中成长 中青年干部研修班交流课题调研成果 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132454&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [2] => Array ( [Title] => 我校积极推进奉贤区产学研协同创新工作 先进个人获表彰 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132443&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [3] => Array ( [Title] => 学校召开行政例会部署近期工作 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132442&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [4] => Array ( [Title] => 校领导率队赴上海大学学习考察信息化建设工作 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132441&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [5] => Array ( [Title] => 十篇论文获评学报(自然科学版)首届优秀论文 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132299&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [6] => Array ( [Title] => 我校世界电影研究中心师生入选上海国际电影节选片人 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132331&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [7] => Array ( [Title] => 我校召开2014年上海师范大学教育实习计划协调会 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132326&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [8] => Array ( [Title] => “多元文化?多彩世界”校外语综合能力大赛开幕 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132358&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ))
这样看起来是 网址都连在一块了 而且我是return回去一个数组
然后我在微信端 是用图文格式 输出的
标题都是正确的 但点击标题后 进去的只是www.shnu.edu.cn 并没有跳转到完整的地址
为什么不能连在一块?
print_r($n); 有不有值。
你把生成的链接的源码贴出来看看。
Array( [0] => Array ( [Title] => 师大要闻 >>>>>>>>>>>>>>>点击进入首页 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/newsPic2.jpg [Url] => http://xw.shnu.edu.cn/ ) [1] => Array ( [Title] => 在调研思考中成长 中青年干部研修班交流课题调研成果 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132454&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [2] => Array ( [Title] => 我校积极推进奉贤区产学研协同创新工作 先进个人获表彰 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132443&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [3] => Array ( [Title] => 学校召开行政例会部署近期工作 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132442&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [4] => Array ( [Title] => 校领导率队赴上海大学学习考察信息化建设工作 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132441&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [5] => Array ( [Title] => 十篇论文获评学报(自然科学版)首届优秀论文 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132299&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [6] => Array ( [Title] => 我校世界电影研究中心师生入选上海国际电影节选片人 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132331&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [7] => Array ( [Title] => 我校召开2014年上海师范大学教育实习计划协调会 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132326&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ) [8] => Array ( [Title] => “多元文化?多彩世界”校外语综合能力大赛开幕 [Description] => [PicUrl] => http://1.shnuzs.sinaapp.com/images/shnu.bmp [Url] => http://www.shnu.edu.cn/Default.aspx?tabid=9597&ctl=Details&mid=19994&ItemID=132358&SkinSrc=[L]Skins/shangshida1_4/shangshida1_4&language=zh-CN ))
url打印的时候 都是完整的
这样看起来是 网址都连在一块了 而且我是return回去一个数组
然后我在微信端 是用图文格式 输出的
标题都是正确的 但点击标题后 进去的只是www.shnu.edu.cn 并没有跳转到完整的地址 可能是 & 被转义成 & 的原因
你至少要将 Url 像他那样放在引号里
可能是 & 被转义成 & 的原因
你至少要将 Url 像他那样放在引号里
'Url' => "http://www.shnu.edu.cn.$n[1][$i]."
这样吗?
可能是 & 被转义成 & 的原因
你至少要将 Url 像他那样放在引号里
不清楚怎么放
可能是 & 被转义成 & 的原因
你至少要将 Url 像他那样放在引号里
我全改成单引号 也不行 你取到的 url 是正确的
但你在使用这些 url 时可能写的不对
你取到的 url 是正确的
但你在使用这些 url 时可能写的不对
就只有这一个地方用了 'Url' => "http://www.shnu.edu.cn".$n[1][$i].""
你这是获取!
这个 _xinwen 函数总是有人在调用吧
你这是获取!
这个 _xinwen 函数总是有人在调用吧
$items = _xinwen(); $itemTpl = "-
"; $articles = ''; foreach ($items as $key) { $articles.=sprintf($itemTpl,$key['Title'],$key['Description'],$key['PicUrl'],$key['Url']); } $newsTpl = " %s %s "; echo sprintf($newsTpl,$fromUsername,$toUsername,$time,'news',count($items),$articles);
xml消息输出 贴出他的结果
贴出他的结果
这个是微信 图文信息格式 输出的
现在我用微信网页版
点击其中一条新闻后,这是浏览器的地址栏
显示的是完整的地址 但是为什么不跳转到那个页面???
贴出他的结果
怎么不让&转义? 这不就对了吗?
你抓取到的是这样的 url:
http://www.shnu.edu.cn/Default.aspx?tabid=9597 &ctl=Details &mid=19994 &ItemID=132331 &SkinSrc=[L]Skins/shangshida1_4/shangshida1_4 &language=zh-CN
即字段分隔符 & 是被转义的
虽然这样的 url 直接使用并没问题,但如果再转义一次就不行了!
所以你应该处理成这样的
http://www.shnu.edu.cn/Default.aspx?tabid=9597 &ctl=Details &mid=19994 &ItemID=132331 &SkinSrc=[L]Skins/shangshida1_4/shangshida1_4 &language=zh-CN
即把 amp; 删去,就应该没有问题了
'Url' => "http://www.shnu.edu.cn".$n[1][$i]
改成
'Url' => "http://www.shnu.edu.cn". str_replace('amp;', '', $n[1][$i])
人气教程排行
-
174次
1
php如何获取跳转前的url
-
174次
2
php格林威治时间转换成当前时间的方法
-
174次
3
为什么php不能做大型系统?
-
174次
4
range函数怎么用
-
174次
5
php中计算页面加载时间几种方法总结_PHP教程
-
174次
6
求帮助,关于paypal支付返回值修改订单状态
-
174次
7
typecho怎么配置文章内容页?
-
174次
8
PhpStorm左侧structure不显示文件的方法列表是这么回事?
-
174次
9
查看PHP的环境变量_PHP
-
174次
10
PHP Primary script unknown 解决方法总结
-
174次
11
php的命名空间与自动加载实现方法
-
174次
12
解决laravel 出现ajax请求419(unknown status)的问题
-
173次
13
php 如何删除mysql记录
-
173次
14
PHP如何替换数组中的指定元素
-
173次
15
怎么去除字符串中非汉字、非字母、非数字的字符
-
173次
16
mysql如何一次执行多条SQL语句
-
173次
17
修改header里面的Connection为close解决方法
-
173次
18
PHP基于session.upload_progress 实现文件上传进度显示功能详解
-
173次
19
php5.6.x到php7.0.x特性小结
-
172次
20
php为什么会出现504错误