轻松掌握MacPython,畅玩微信朋友圈抓取!
优采云 发布时间: 2023-04-18 22:372023年04月18日,微信朋友圈已经成为我们生活中不可或缺的一部分。但是,由于微信官方限制,我们不能直接抓取朋友圈数据。那么,有没有什么方法可以解决这个问题呢?答案是肯定的!在本文中,我们将介绍如何使用mac python抓取微信朋友圈。
一、安装Python
首先,我们需要安装Python。打开终端,输入以下命令:
brew install python
二、安装ChromeDriver
接下来,我们需要安装ChromeDriver。在终端中输入以下命令:
brew install chromedriver
三、创建虚拟环境
为了避免与其他Python包冲突,我们需要创建一个虚拟环境。在终端中输入以下命令:
python -m venv env
source env/bin/activate
四、安装必要的Python包
在虚拟环境中,我们需要安装必要的Python包。在终端中输入以下命令:
pip install selenium
pip install pandas
pip install openpyxl
pip install pillow
pip install jieba
pip install wordcloud
五、编写代码
现在,我们可以开始编写代码了。以下是一个简单的Python脚本,可以抓取微信朋友圈的文字和图片:
python
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.keys import Keys
from time import sleep
import pandas as pd
import openpyxl
from PIL import Image
import jieba
from wordcloud import WordCloud
#设置ChromeDriver选项
chrome_options = Options()
chrome_options.add_argument('--headless')#后台运行Chrome
#创建一个ChromeDriver实例
driver = webdriver.Chrome(options=chrome_options)
#打开微信网页版登录页面
driver.get('https://wx.qq.com/')
sleep(10)#等待10秒手动扫码登录微信
#打开朋友圈页面
driver.find_element_by_class_name('menuitem:nth-child(2)').click()
#模拟滚动鼠标到底部,直到所有内容都加载完成
while True:
driver.execute_script('window.scrollTo(0, document.body.scrollHeight)')
sleep(2)
if driver.execute_script('return document.body.scrollHeight')== driver.execute_script('return document.body.scrollTop'):
break
#获取朋友圈文字和图片信息,并保存到Excel文件中
df = pd.DataFrame(columns=['Text','Image'])
elements = driver.find_elements_by_css_selector('.weui-media-box__desc')
for i in range(len(elements)):
df.loc[i,'Text']= elements[i].text
images = driver.find_elements_by_css_selector(f'.weui-media-box__bd:nth-child({i+1}).weui-media-box__thumb')
if len(images)>0:
img_urls =[img.get_attribute('style').split('"')[1] for img in images]
img_paths =[]
for j, url in enumerate(img_urls):
driver.get(url)
driver.save_screenshot(f'screenshot{j}.png')
img = Image.open(f'screenshot{j}.png')
img_path =f'image{j}.png'
img.save(img_path)
img_paths.append(img_path)
df.loc[i,'Image']=';'.join(img_paths)
#保存Excel文件
df.to_excel('friends.xlsx', index=False)
#生成词云图
text =''.join(df['Text'].tolist())
words =''.join(jieba.cut(text))
wordcloud = WordCloud().generate(words)
wordcloud.to_file('wordcloud.png')
#退出ChromeDriver实例
driver.quit()
六、运行代码
现在,我们可以运行代码了。在终端中输入以下命令:
python wechat.py
七、查看结果
代码运行完成后,我们可以在当前目录下找到生成的Excel文件和词云图。
八、结论
本文介绍了如何使用mac python抓取微信朋友圈。通过这种方法,我们可以方便地获取朋友圈信息,并进行分析和可视化。
九、关于优采云
如果您需要进行SEO优化,可以考虑使用优采云。优采云是一款全站SEO优化工具,可以帮助您提高网站排名和流量。了解更多信息,请访问官网:www.ucaiyun.com。