婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > PHP寫微信公眾號文章頁采集方法

PHP寫微信公眾號文章頁采集方法

熱門標簽:商丘外呼系統好處 百度地圖標注類型是酒店 400電話申請辦理 隨州銷售電銷機器人公司 網絡電話400申請 全國各省地圖標注點 周口網絡回撥外呼系統 外呼系統人工客服 福建高頻外呼防封系統哪家好

通過搜狗搜索采集公眾號歷史消息有幾個問題:

1、有驗證碼;

2、歷史消息列表只有最近10條群發內容;

3、文章地址是有有效期的;

4、據說批量采集還要換ip;

通過我前面文章的方法就沒有這些問題,雖然采集系統搭建不如傳統采集器寫個規則去爬就可以了那么簡單。但是一次搭建好之后批量采集的效率還是可以的。而且采集的文章地址是永久有效的,并且可以采集到一個公眾號所有的歷史消息。
我們還是從一個公眾號文章的鏈接地址開始看:

1、從微信右上角菜單復制到的鏈接地址:

http://mp.weixin.qq.com/s/fF34bERZ0je_8RWEJjoZ5A

2、歷史消息列表中獲取到的地址:

http://mp.weixin.qq.com/s?__biz=MjM5NDAwMTA2MA==mid=2695729619idx=1sn=8be0b6bd0210cee0d492ebdf20f7371fchksm=83d74818b4a0c10ef286b33bb7deb73226125f866ddb5b2781166066a69afef3705eabdb3b85scene=4#wechat_redirect

3、完整的真實地址:

https://mp.weixin.qq.com/s?__biz=MjM5NDAwMTA2MA==mid=2695729619idx=1sn=8be0b6bd0210cee0d492ebdf20f7371fchksm=83d74818b4a0c10ef286b33bb7deb73226125f866ddb5b2781166066a69afef3705eabdb3b85scene=37key=c81d77271180a0e6ce32be2d9dcaa2a7436aeba2c1d47a20d02194d1c944a8286a8eded93495eeadd05da412bbfaa638a379750aeaa4cf5c00e4d7851c5710d9b9736b80e3c72770a57a515c23ff2400ascene=3uin=MzUyOTIyNQ%3D%3Ddevicetype=iOS10.1.1version=16050120nettype=WIFIfontScale=100pass_ticket=FGRyGfXLPEa4AeOsIZu7KFJo6CiXOZex83Y5YBRglW4%3Dwx_header=1

以上這3個地址是同一篇文章的地址,在不同位置獲取到就得到了完全不同的3個結果。

和歷史消息頁一樣,微信有一套自動補充參數的機制。第一個地址是復制鏈接得到的,看起來是一個偽裝的編碼。其實沒什么用我們不做考慮了。第二個地址是通過前面文章介紹的方法,從歷史消息的json文章列表中獲得到的鏈接地址,我們就是可以將這個地址保存到數據庫中。之后就可以通過這個地址從服務器獲取到文章內容。而第三個鏈接補充了參數之后,目的是為了讓文章頁面中的閱讀量js可以獲取到閱讀量點贊量的json結果而加上的參數。我們前面文章的方法中因為文章頁面被客戶端打開顯示了出來,因為有了這些參數,文章頁面中的js就去自動獲取閱讀量了,所以我們才能通過代理服務獲取到這篇文章的閱讀量。

這篇文章的內容就是以通過本專欄前面文章介紹的方法已經獲取到了大量微信文章的基礎上,詳細研究如何獲取到文章內容和其它一些有用的信息的方法。

(我的數據庫中保存的文章列表,一部分字段)

1、獲取文章源代碼:

通過php的函數file_get_content()就可以將文章源代碼讀取到變量中。微信文章的源代碼因為可以從瀏覽器中打開所以我就不在這里粘貼了,以免浪費頁面空間。

?
//$content_url 變量的值為文章地址
$html = file_get_contents($content_url);
?>

2、源代碼中有用的信息:

1)原文內容:

原文內容是包含在一個div id='js_content'>/div>標簽中的,通過php代碼獲取:

?
preg_match_all("/id=\"js_content\">(.*)script/iUs",$html,$content,PREG_PATTERN_ORDER);
$content = "div id='js_content'>".$content[1][0];
?>

正則的開頭識別div id='js_content'>,結尾識別script/iUs,匹配到之后前面再補充一個div id='js_content'>;我的正則匹配水平有限,只能寫成這樣的了。希望有高人能指點更好的正則匹配方法。

另外注意:這個匹配規則會可能在一段時間之后有變化。這篇文章會盡量保持更新。如果你根據我的文章制作了采集系統之后,當某一天失效了,別忘了回來再看看文章是否有更新。

2)內容處理:

通過上面的方法我們獲得了文章內容的html,但是你將文章內容顯示出來之后就會發現,圖片和視頻不能正常顯示。因為這個html還需要一些加工:

首先是圖片,微信文章中的img>標簽中的src屬性全部都用了data-src屬性代替。只有在顯示的時候才會被替換過來。所以我們也有兩個方案,將源代碼直接替換過來,或者用js在顯示時候再替換。下面我先介紹直接替換html的方法:

?
//$content變量的值是前面獲取到的文章內容html
$content = str_replace("data-src","src",$content);
?>

然后是視頻,視頻的顯示不正常,經過長期測試后發現只要替換一個頁面地址就能解決,過程就不說了,直接說結果:

?
//$content變量的值是前面獲取到的文章內容html
$content = str_replace("preview.html","player.html",$content);
?>

通過這兩個替換之后,文章內容html中的圖片和視頻就都正常了。

3) 公眾號相關信息:

通過本專欄之前的文章,介紹了我們使用微信客戶端,任意打開一個公眾號的歷史消息頁之后。系統從數據庫中識別biz的值,發現數據庫中沒有記錄,就會插入一條新的紀錄。之后的采集隊列就會定期根據這個biz來獲取這個公眾號的歷史消息列表。

但是我們只獲得了這個公眾號的biz,公眾號的名稱,頭像這兩個重要信息還是沒有獲取到。主要原因是歷史消息頁面中沒有這兩個信息。但是我們可以從文章頁面中獲取到。

在微信文章頁面html的底部,有一些js的變量賦值的代碼,通過正則匹配之后我們就可以獲得這兩個公眾號的信息:

?
//$html變量的值是前面獲取到的文章全部html
preg_match_all('/var nickname = \"(.*?)\";/si',$html,$m);
$nickname = $m[1][0];//公眾號昵稱
preg_match_all('/var round_head_img = \"(.*?)\";/si',$html,$m);
$head_img = $m[1][0];//公眾號頭像
?>

通過這兩個正則匹配,我們就能獲取到公眾號的頭像和昵稱,然后根據文章地址中的biz,可以保存到對應的微信號數據表中。

3、文章的保存和處理

前面的代碼已經將文章內容獲取到變量中了。如何保存其實每個人也許都有自己的想法。我這里介紹一下我的保存內容的方法:

將文章內容的html以數據庫id為文件名保存成html文件,以biz字段為目錄。

?
$dir = "./".$biz."/";
$filename = $dir.$id.".html";
if(!is_dir($dir)) {
  mkdir($cache_dir);
  chmod($cache_dir,0777);
}
$file = fopen($filename, "w");
fwrite($file, $content);
fclose($file);
?>

以上代碼是一個標準的php建立文件夾保存文件的代碼,大家可以根據自己的實際情況安排保存方法。

在這之后我們就可以在自己的服務器上得到一個html文件,內容就是公眾號的文章內容。我們可以從瀏覽器中打開看一下。這時你也許會發現圖片防盜鏈了!無法正常顯示!包括數據庫中保存的文章封面圖,公眾號的頭像都是防盜鏈的。

別急,這個問題很好解決,只需要將圖片也保存到自己的服務器,無非是將來會占用自己的服務器空間和帶寬。

圖片防盜鏈的原理是當圖片在網頁中顯示的時候,圖片服務器會檢測到引用這張圖片的服務器域名,當發現服務器域名不包含http://qq.com或http://qpic.cn的時候就會被替換成防盜鏈圖片。

但是如果檢測不到引用頁面的域名就會正常顯示,所以我們通過php的函數file_get_content()就可以將圖片的二進制代碼獲取過來,然后根據自己的想法起個文件名保存到自己的服務器上。在這里再介紹一個保存圖片的方法,我目前使用了騰訊云的“萬象優圖”,通過它們提供的api將圖片保存到云空間,這樣的好處是讀取圖片時直接在圖片的鏈接地址加上希望得到的圖片尺寸大小參數,就可以直接得到一張縮略圖。比存在自己的服務器方便得多。阿里云也應該有同樣的產品,好像名叫對象存儲。

另外,我采集公眾號內容的目的是制作成一個新聞app,在app中將html代碼顯示出來之后,因為app同樣沒有域名,防盜鏈服務器也同樣不會認為圖片被盜鏈了。這樣就可以直接顯示圖片出來。

以上就是我總結的公眾號文章內容的采集與存儲方法,希望能夠幫到你。

標簽:佛山 迪慶 海南 南寧 十堰 六安 定西 樂山

巨人網絡通訊聲明:本文標題《PHP寫微信公眾號文章頁采集方法》,本文關鍵詞  PHP,寫微,信,公眾,號,文章,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PHP寫微信公眾號文章頁采集方法》相關的同類信息!
  • 本頁收集關于PHP寫微信公眾號文章頁采集方法的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    欧美日韩激情在线| 欧美日免费三级在线| 色国产精品一区在线观看| 国产视频一区二区在线| 国内精品在线播放| 久久久www成人免费无遮挡大片| 美女视频黄 久久| 欧美日韩精品福利| 日韩电影在线一区二区三区| 欧美一区二区高清| 国产乱码精品1区2区3区| 国产欧美日韩中文久久| 91视频国产资源| 午夜av电影一区| 久久亚洲精精品中文字幕早川悠里| 国产一区二区精品久久91| 亚洲国产成人午夜在线一区| 欧美专区亚洲专区| 国产一区二区在线电影| 亚洲品质自拍视频网站| 91精品国产欧美一区二区18| 国产91综合一区在线观看| 亚洲免费在线电影| 久久这里只有精品首页| 欧美在线视频全部完| 麻豆国产精品官网| 中文字幕一区二区三| 欧美一区二区美女| 色婷婷精品大在线视频| 黄色成人免费在线| 亚洲国产另类精品专区| 欧美在线免费观看亚洲| 精品综合久久久久久8888| 极品少妇一区二区| 国产麻豆视频一区| 国产精品一二三四| 亚洲午夜av在线| 国产日本一区二区| 7777精品伊人久久久大香线蕉完整版| 久久99精品国产.久久久久| 日韩美女精品在线| 精品欧美黑人一区二区三区| 91国偷自产一区二区开放时间| 国产自产高清不卡| 舔着乳尖日韩一区| 亚洲日本丝袜连裤袜办公室| 久久无码av三级| 欧美性大战久久| 国产精品色眯眯| 毛片不卡一区二区| 欧美丰满嫩嫩电影| 视频一区欧美日韩| 亚洲综合清纯丝袜自拍| 国产精品丝袜一区| 久久久久久**毛片大全| 日韩一区二区电影| 欧美日韩一区在线| 日本福利一区二区| 99re免费视频精品全部| 国产成人一级电影| 国产精品一区2区| 国产精品一二三区| 成人国产电影网| 午夜成人免费电影| 亚洲第一久久影院| 欧美羞羞免费网站| 日韩福利视频网| 久久久.com| 精品日韩在线一区| 精品美女被调教视频大全网站| 欧美日韩在线精品一区二区三区激情| 91美女视频网站| 91久久一区二区| 欧亚一区二区三区| 欧美精品九九99久久| 91精品久久久久久蜜臀| 日韩免费高清视频| 国产片一区二区三区| 国产精品久久国产精麻豆99网站 | 国产.欧美.日韩| 亚洲欧美日韩国产手机在线 | 国产精品天美传媒沈樵| 欧美无人高清视频在线观看| 国产一区二区调教| 97精品久久久久中文字幕| 色婷婷综合在线| 欧美一区二区视频观看视频| 精品成人佐山爱一区二区| 国产日韩欧美精品综合| 亚洲欧美色图小说| 日韩精品1区2区3区| 国产成+人+日韩+欧美+亚洲| 欧美写真视频网站| 国产三级精品三级| 亚洲黄色在线视频| 精品在线播放免费| 国产高清成人在线| 亚洲国产日日夜夜| 亚洲免费观看高清完整版在线| 成人免费视频一区二区| 国产午夜亚洲精品午夜鲁丝片| 国产成人99久久亚洲综合精品| 久久久久久久久久久99999| 成人免费的视频| 亚洲国产精品久久久男人的天堂| 精品国产伦一区二区三区观看体验| 国产成人在线视频网站| 日韩一区有码在线| 日韩欧美成人激情| 91色视频在线| 精久久久久久久久久久| 亚洲丶国产丶欧美一区二区三区| 51精品秘密在线观看| 国产日韩欧美精品综合| 日本美女视频一区二区| 99精品欧美一区二区蜜桃免费| 精品人在线二区三区| 亚洲人成精品久久久久| 国产成人免费9x9x人网站视频| 欧美美女一区二区| 亚洲三级在线免费观看| 国产一区二三区| 日韩三级精品电影久久久| 一区二区高清免费观看影视大全| 国产91精品在线观看| 日韩欧美一区二区免费| 亚洲国产成人porn| 美国毛片一区二区三区| 欧美影视一区在线| 亚洲欧美日韩中文字幕一区二区三区| 经典一区二区三区| 2021国产精品久久精品 | 欧美日韩高清在线| 懂色av一区二区夜夜嗨| 欧美一区二区久久| 国产美女娇喘av呻吟久久| 视频在线观看91| 天堂va蜜桃一区二区三区| 丝袜美腿亚洲一区二区图片| 成人h精品动漫一区二区三区| 久久久久国色av免费看影院| 国产精品18久久久久久久久| 欧美精品一区二区精品网| 奇米精品一区二区三区在线观看一| 日本精品一级二级| 一区二区三区中文在线| 欧美日韩在线直播| 日本成人中文字幕| 久久综合国产精品| 成人美女视频在线观看| 国产精品九色蝌蚪自拍| 成人av电影在线网| 亚洲一区二区三区免费视频| 在线观看区一区二| 午夜激情久久久| 精品卡一卡二卡三卡四在线| 风间由美中文字幕在线看视频国产欧美| 26uuu久久综合| jlzzjlzz国产精品久久| 亚洲一本大道在线| 日韩精品一区二区三区老鸭窝| 国产经典欧美精品| 亚洲精品国产无套在线观| 欧美一二三四区在线| 成人av网址在线观看| 亚洲午夜免费电影| 久久久久九九视频| 欧美日韩国产精选| 国产成人精品三级麻豆| 亚洲一区免费视频| 精品久久久久久久久久久久久久久 | 一区二区三区成人| 日韩欧美一级二级| 成人黄色一级视频| 日本亚洲免费观看| 国产农村妇女毛片精品久久麻豆 | 久久久久九九视频| 在线免费观看日本一区| 老司机精品视频线观看86| 中文字幕第一区二区| 91精品国产欧美一区二区成人| 成人av小说网| 国产一级精品在线| 日本欧美大码aⅴ在线播放| 中文字幕电影一区| 日韩视频免费观看高清在线视频| av资源网一区| 国产一区二区不卡| 日本欧洲一区二区| 1000精品久久久久久久久| 精品久久一区二区| 欧美视频日韩视频| 成人黄页毛片网站| 国产成人在线视频免费播放| 日韩和欧美一区二区三区| 亚洲欧美综合在线精品| 久久久国际精品| 欧美精品一区二区三区视频| 91精品综合久久久久久| 在线精品视频免费播放|