Nowadays, there are more and more WeChat users. Of course, they will pay attention to manyWeChat public accounts. It can be seen that the articles inWeChat public accountsare very long to read. Today Let me analyze how to use PHP to write a method of collectingWeChat public accountarticles and explain the code in detail. Let's take a look together!
There are several problems in collecting historical messages of public accounts through Sogou search:
1. There is averification code;
2. The historical message list only has the latest 10 pieces of bulk content;
3. The article address has a validity period;
4. It is said that you need to change the IP for batch collection;
There is no way through the method in my previous article For these problems, although the construction of the collection system is not as simple as writing rules for traditional collectors to crawl. However, the efficiency of batch collection after being set up once is still acceptable. Moreover, the collected article addresses are permanently valid, and all historical messages of a public account can be collected.
Let’s start with the link address of a public account article:
1. Copy the link address from the menu in the upper right corner of WeChat:
http:/ /mp.weixin.qq.com/s/fF34bERZ0je_8RWEJjoZ5A
2. The address obtained from the historical message list:
http://mp. weixin.qq.com/s?biz=MjM5NDAwMTA2MA==&mid=2695729619&idx=1&sn=8be0b6bd0210cee0d492ebdf20f7371f&chksm=83d74818b4a0c10ef286b33bb7deb73226125f866ddb 5b2781166066a69afef3705eabdb3b85&scene=4#wechat_redirect
3. Complete real address:
The above 3 addresses are the addresses of the same article. If you obtain them from different locations, you will get completely different 3 addresses. results. Like the historical message page, WeChat has a mechanism for automatically supplementing parameters. The first address is obtained by copying the link and seems to be a disguised encoding. In fact, it’s useless and we won’t consider it. The second address is the link address obtained from the json article list of historical messages through the method introduced in the previous article. We can save this address to the database. Afterwards, the article content can be obtained from the server through this address. After the parameters are added to the third link, the purpose is to allow the reading js in the article page to obtain the json result of the reading likes. In the method of our previous article, the article page is opened and displayed by the client. Because of these parameters, the js in the article page automatically obtains the reading volume, so we can obtain the reading volume of this article through the proxy service. . The content of this article is to study in detail how to obtain article content and other useful information based on the method introduced in the previous article of this column. (list of articles saved in my database, some fields)1. Get the source code of the article:
You can read the article source code into a variable through the PHP function file_get_content(). Since the source code of the WeChat article can be opened from the browser, I will not paste it here to avoid wasting page space.//$content_url 变量的值为文章地址 $html = file_get_contents($content_url); ?>
2. Useful information in the source code:
1) Original content : The original content is contained in a tag, obtained throughphp code:
preg_match_all("/id=\"js_content\">(.*)