pip install mechanicalsoup
import mechanicalsoupdef get_search_results(page_limit=3): query = "python学霸公众号" url = f"https://weixin.sogou.com/weixin?type=2&query={query}" browser = mechanicalsoup.StatefulBrowser() custom_headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3', } browser.session.headers.update(custom_headers) data = [] page_count = 1 while page_count <= page_limit: current_url = url if page_count == 1 else f"{url}&page={page_count}" response = browser.open(current_url) page = browser.get_current_page() results = page.select('.txt-box') for result in results: title = result.select('h3')[0].text.strip() link = "https://weixin.sogou.com" + result.select('a')[0]['href'] data.append({'title': title, 'link': link}) page_count += 1 return dataif __name__ == '__main__': page_limit = 2 results = get_search_results(page_limit) # 格式化输出结果 print(f"共爬取到 {len(results)} 条微信文章结果:") print("-" * 80) for idx, item in enumerate(results, 1): print(f"{idx}. 标题:{item['title']}") print(f" 链接:{item['link']}") print("-" * 80)