PHP代码妙用!获取公众号文章链接,这里有完整教程!
优采云 发布时间: 2023-03-02 04:30想要在自媒体领域做好SEO优化,获取高质量的外链是非常重要的一环。而在获取外链的过程中,获取公众号文章链接是一种不错的方式。那么,如何通过PHP代码获取公众号文章链接呢?下面将详细介绍。
1. 登录公众平台,获取cookie
首先,我们需要登录自己的公众号后台,获取登录后的cookie。具体方法可以在浏览器中打开自己的公众号后台,按F12打开开发者工具,点击Network选项卡,刷新页面后在过滤器中搜索appmsg即可找到请求。在Headers中找到Request Headers中的cookie项,将其复制下来备用。
2. 获取文章列表数据
通过抓包工具或者浏览器的开发者工具获取到文章列表数据的API地址,如https://mp.weixin.qq.com/cgi-bin/appmsg?action=list_ex&begin=0&count=10&fakeid=xxxxx&type=9&query=&token=yyyyy&lang=zh_CN&f=json&ajax=1。其中,fakeid表示公众号的id,需要在自己的公众号后台中查看。
然后,我们可以通过curl模拟http请求获取到文章列表的json数据。具体代码如下:
```
$url = "https://mp.weixin.qq.com/cgi-bin/appmsg?action=list_ex&begin=0&count=10&fakeid=xxxxx&type=9&query=&token=yyyyy&lang=zh_CN&f=json&ajax=1";
$header = array(
'Cookie: '.$cookie
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
$result = curl_exec($ch);
curl_close($ch);
```
3. 解析文章列表数据
通过解析文章列表数据,我们可以获取到每篇文章的标题、链接等信息。具体代码如下:
```
$data = json_decode($result, true);
$article_list = $data['app_msg_list'];
foreach($article_list as $article) {
$title = $article['title'];
$link = $article['link'];
// 进一步处理获取到的文章链接
// ...
}
```
4. 获取文章内容
最后,我们可以通过访问文章链接获取文章内容。这里需要注意的是,为了避免被微信限制,我们需要在访问文章链接时伪装成浏览器。具体代码如下:
```
$header = array(
'Referer: https://mp.weixin.qq.com',
'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:89.0) Gecko/20100101 Firefox/89.0'
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $link);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
$result = curl_exec($ch);
curl_close($ch);
```
至此,我们就通过PHP代码获取到了公众号文章链接。通过这种方式获取到的链接可以用于自己的博客、论坛等地方,提高文章的曝光率和阅读量。当然,在获取文章链接的过程中,需要注意自己的操作是否符合微信公众平台的规定,避免触犯相关规定。