【Python爬虫】如何批量获取并下载某生活指南APP网页端的个人主页所有笔记,更新于2024.9.5

本主要分为三部分【批量获取主页信息】、【批量下载笔记图片】、【对比本地内容更新列表】。

一、【批量获取主页信息】

通过Python-selenium工具在某书的网页端抓取个人主页的所有笔记信息(aid,title,url),并存入本地。由于某书没有翻页的设置,而是一直往下刷新笔记,这次更新了鼠标滚轮功能以自动获取长网页的信息。最后通过Python-pandas工具读写本地Excel文件。

# 获取主页所有笔记的地址


import time
import os
import pandas as pd
from selenium.webdriver.edge.options import Options
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys

# 采集作者所有作品的ID的函数
def Get_IDs(her_web):
    # 访问网站
    user_data_dir = r"C:\Users\yourPCname\AppData\Local\Microsoft\Edge\User Data"
    options = Options()
    options.add_argument(f"user-data-dir={user_data_dir}")
    wb = webdriver.Edge(options=options)
    # 输入网址
    time.sleep(3)
    wb.get(her_web)
    # print('验证')
    # input()
    name = wb.find_element(By.CSS_SELECTOR, '#userPageContainer  div.user-nickname').text
    print('博主昵称:', name)
    ID = wb.find_element(By.CSS_SELECTOR, '#userPageContainer  span.user-redId').text
    print(ID)
    Name = name + '_' + ID + '.xlsx'

    # 存储找到的链接
    IDs_Photo = []

    # 滚动页面直到不再加载新的元素
    previous_height = wb.execute_script("return document.body.scrollHeight")

    while True:
        # 获取当前可见的元素
        lis = wb.find_elements(By.CSS_SELECTOR, '#userPostedFeeds > section> div ')

        # 将新找到的链接加入到列表中
        for li in lis:
            try:
                title = li.find_element(By.CSS_SELECTOR, ' .title').text
            except :
                title=name

            url = li.find_element(By.CSS_SELECTOR, ' a').get_attribute('href')
            # 创建一个字典存放网址、aid和作品名称(后续还要加入作者和发布时间)
            note_info = {'aid': url.replace('https://www.xiaohongshu.com/explore/', ''),
                         'title': replace_x(title),
                         'url': url}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值