Maison  >  Article  >  développement back-end  >  PHP écrivant un exemple de collection de pages d'articles de compte public WeChat method_php

PHP écrivant un exemple de collection de pages d'articles de compte public WeChat method_php

韦小宝
韦小宝original
2017-12-05 09:24:212085parcourir

De nos jours, il y a de plus en plus d'utilisateurs de WeChat, et bien sûr, ils prêteront attention à de nombreux Comptes publics WeChat Les articles du Compte public WeChat sont également très. long à lire. Aujourd'hui, permettez-moi d'analyser comment utiliser PHP pour écrire une méthode de collecte d'articles sur le compte public WeChat et d'expliquer le code en détail.

Il y a plusieurs problèmes dans la collecte des messages historiques des comptes publics via la recherche Sogou :

1 Il y a un code de vérification

2. la liste des messages historiques ne contient que les 10 derniers éléments de contenu publiés en masse ;

3. L'adresse de l'article a une période de validité

4. 🎜>

Il n'y a aucun moyen d'utiliser la méthode de mon article précédent pour résoudre ces problèmes, bien que la construction du système de collecte ne soit pas aussi simple que d'écrire des règles que les collectionneurs traditionnels peuvent explorer. Cependant, l’efficacité de la collecte par lots après sa mise en place reste acceptable. De plus, les adresses d'articles collectées sont valables en permanence et tous les messages historiques d'un compte public peuvent être collectés.

Commençons par l'adresse du lien d'un article de compte public :

1. Copiez l'adresse du lien dans le menu dans le coin supérieur droit de WeChat :

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


2 L'adresse obtenue à partir de la liste des messages historiques :

http:/ /mp weixin.qq.com/s?biz=MjM5NDAwMTA2MA==&mid=2695729619&idx=1&sn=8be0b6bd0210cee0d492ebdf20f7371f&chksm=83d74818b4a0c10ef286b33bb7deb73226125f866 ddb 5b2781166066a69afef3705eabdb3b85&scene=4#wechat_redirect


3. Adresse réelle complète :

https: //

mp.weixin.qq.com/s?biz=mjm5ndawmta2ma==&mid=2695729619&IDX=1&SN=8BE0BD0210DF20F7371F&CHKHKSM= 83D74818B4A0C10EF286B33bb7De b73226125F866DDB5B278166069AFEF3705EABDB3B85 & Scène = 37 & Clé A7436AEBA2C1D47A20D02194D1C944A8286A8Eded93495EEADD05DA412BBFA A638A379750AEAA4CF5C00E4D78 573C72777777715C23F23F f2400 & ascene = 3 & uin = mzuyotiynq%3d%3D & DeviceType =iOS10.1.1&version=16050120&nettype=WIFI&fontScale=100&pass_ticket=FGRyGfXLPEa4 AeOsIZu7KFJo6CiXOZex83Y5YBRglW4%3D&wx_header=1Les trois adresses ci-dessus sont les adresses du même article, obtenu à différents endroits Vous obtenez 3 résultats complètement différents.

Semblable à la page de messages historiques, WeChat dispose d'un mécanisme pour compléter automatiquement les paramètres. La première adresse est obtenue en copiant le lien et semble être un encodage déguisé. En fait, c’est inutile et nous n’y penserons pas. La deuxième adresse est l'adresse du lien obtenue à partir de la liste des messages historiques de l'article json via la méthode introduite dans l'article précédent. Nous pouvons enregistrer cette adresse dans la base de données. Ensuite, vous pouvez obtenir le contenu de l'article depuis le serveur via cette adresse. Une fois les paramètres ajoutés au troisième lien, le but est de permettre aux js de lecture dans la page de l'article d'obtenir le résultat json des likes de lecture. Dans la méthode de notre article précédent, la page de l'article est ouverte et affichée par le client. Grâce à ces paramètres, le js dans la page de l'article obtient automatiquement le volume de lecture, nous pouvons donc obtenir le volume de lecture de cet article via le service proxy. .

Le contenu de cet article est d'étudier en détail comment obtenir le contenu de l'article et d'autres informations utiles sur la base de la méthode introduite dans l'article précédent de cette chronique.

(liste des articles enregistrés dans ma base de données, quelques champs)

1 Récupérer le code source de l'article :

Vous pouvez lire le code source de l'article dans une variable via la fonction PHP file_get_content(). Étant donné que le code source de l'article WeChat peut être ouvert depuis le navigateur, je ne le collerai pas ici pour éviter de perdre de l'espace sur la page.


<?
//$content_url 变量的值为文章地址
$html = file_get_contents($content_url);
?>


2. Informations utiles dans le code source :

1) Contenu original :

Le contenu original est contenu dans une balise cfd680454c127ace0ad40a8afa2cb84a94b3e26ee717c64999d7867364b1b4a3 et est obtenu via le

code php

 :


<?
preg_match_all("/id=\"js_content\">(.*)<script/iUs",$html,$content,PREG_PATTERN_ORDER);
$content = "<p id=&#39;js_content&#39;>".$content[1][0];
?>

Reconnaissance régulière au début cfd680454c127ace0ad40a8afa2cb84a, reconnaissance à la fin