Python中可以使用第三方库Beautiful Soup和requests来爬取微信公众号文章。下面将介绍具体的步骤和代码实现。

1. 安装所需库

首先,需要使用pip命令安装Beautiful Soup和requests库:

pip install beautifulsoup4
pip install requests

2. 发送请求获取页面内容

使用requests库向微信公众号文章页面发送请求,获取页面内容:

import requests

url = "https://mp.weixin.qq.com/s/xxxxxxxxxxxxx"  # 替换为实际微信公众号文章的链接

headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"
}

response = requests.get(url, headers=headers)
html = response.text

3. 解析页面内容

使用Beautiful Soup解析页面内容,获取所需的文章内容:

from bs4 import BeautifulSoup

soup = BeautifulSoup(html, "html.parser")

# 获取文章标题
title = soup.find("h2", class_="rich_media_title").text.strip()

# 获取文章正文
content = ""
paragraphs = soup.find_all("p", class_="rich_media_content")
for p in paragraphs:
    content += p.text.strip() + "\n"

print(title)
print(content)

4. 完整代码示例

import requests
from bs4 import BeautifulSoup

def crawl_wechat_article(url):
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"
    }

    response = requests.get(url, headers=headers)
    html = response.text

    soup = BeautifulSoup(html, "html.parser")

    # 获取文章标题
    title = soup.find("h2", class_="rich_media_title").text.strip()

    # 获取文章正文
    content = ""
    paragraphs = soup.find_all("p", class_="rich_media_content")
    for p in paragraphs:
        content += p.text.strip() + "\n"

    return title, content

# 测试
url = "https://mp.weixin.qq.com/s/xxxxxxxxxxxxx"  # 替换为实际微信公众号文章的链接
title, content = crawl_wechat_article(url)
print(title)
print(content)

以上就是使用Python爬取微信公众号文章的方法。通过使用Beautiful Soup和requests库,可以方便地获取微信公众号文章的标题和正文内容。