前言:
现在各位老铁们对“小程序导入excel数据”都比较讲究,朋友们都需要学习一些“小程序导入excel数据”的相关知识。那么小编同时在网络上网罗了一些有关“小程序导入excel数据””的相关知识,希望各位老铁们能喜欢,同学们快快来了解一下吧!本期我们来进行实战,爬取小红书的相关数据导入到excel中,后续可进行些数据分析,今后或者已经在运营小红书的小伙伴应该比较喜欢这些数据。今天我们的主角是DrissionPage,相对于之前介绍的selenium省去了很多的配置,直接安装了就能使用。
DrissionPage 是一个基于 python 的网页自动化工具。它既能控制浏览器,也能收发数据包,还能把两者合而为一。可兼顾浏览器自动化的便利性和 requests 的高效率。它功能强大,内置无数人性化设计和便捷功能。它的语法简洁而优雅,代码量少,对新手友好。
使用pip进行安装
pip install DrissionPage
控制浏览器事例
from DrissionPage import ChromiumPage# 创建页面对象,并启动或接管浏览器page = ChromiumPage()# 跳转到登录页面page.get(';)# 定位到账号文本框,获取文本框元素ele = page.ele('#user_login')# 输入对文本框输入账号ele.input('您的账号')# 定位到密码文本框并输入密码page.ele('#user_password').input('您的密码')# 点击登录按钮page.ele('@value=登 录').click()
获取页面数据事例
from DrissionPage import SessionPage# 创建页面对象page = SessionPage()# 爬取3页for i in range(1, 4): # 访问某一页的网页 page.get(f'{i}') # 获取所有开源库<a>元素列表 links = page.eles('.title project-namespace-path') # 遍历所有<a>元素 for link in links: # 打印链接信息 print(link.text, link.link)
下面我们来看看如何利用DrissionPage爬取小红书相关数据。
首先,我们先登录小红书 写一个登陆的函数,第一次运行时留几秒钟进行扫码登录。
def login(): sign_in_page = ChromiumPage() sign_in_page.get(';) print("请扫码登录") # 第一次运行需要扫码登录 time.sleep(10)
登录后我们通过关键字进行搜索相关小红书店铺
def search(keyword): global page page = ChromiumPage() page.get(f'{keyword}&source=web_search_result_notes')
右击检查源代码,我们发现所有的内容都包含在 class=“feeds-container”中,我们利用page.eles获取所有的元素。
def crawler(): container = page.ele('.feeds-container') sections = container.eles('.note-item') for section in sections: name = section('.name').text count= section('.count').text footer = section.ele('.footer', timeout=0) url = footer.ele('tag:a', timeout=0).link title= footer.ele('tag:span', timeout=0).text
最后把查询到的内容通过pandas导入到excel中。
#将上面的查询结果append到datalistdata = DataFrame(datalist)df = pd.DataFrame(data)# 删除重复行df = df.drop_duplicates()df.to_excel('%s.xlsx' %keyword, index=False)
运行结果如下:
具体的源码我已放到了面包多中 敢兴趣的小伙伴可以去看看
限时福利:关注公众号:小妖同学学习记 ,点击“与我联系” 添加微信可直接获取相关源码。
标签: #小程序导入excel数据 #微信小程序导入excel