爬取Lofter的合集内容

Lofter的网页端不支持查看合集内容,只能用移动端设备看,对PC党很不友好。
只好通过对Lofter的安卓客户端抓包,分析API来进行合集内容的批量下载了。

用Python实现了一个简陋的批量下载合集内容并保存为markdown格式的脚本,可以保存文章中的图片。
可以不登录账户但需要手动获取合集ID,也可以在登录网页端Lofter的情况下获取当前账号订阅合集的ID(会读取Cookie信息)。

Github项目地址:
https://github.com/SrakhiuMeow/lofter-getter

使用说明

  1. 用git克隆项目:

    1
    2
    git clone https://github.com/SrakhiuMeow/lofter-getter
    cd lofter-getter

    当然也可以在浏览器打开项目地址,直接下载zip到本地后解压。

  2. 安装环境:

    1
    pip install -r requirements.txt
  3. 获取合集ID:

    下载合集需要获取其ID,有两种方法:

    1. 在Lofter App中进入合集页面,选择分享——复制链接,得到链接中CollectionId后的数字即为合集ID
    2. 在浏览器中登录Lofter,再运行本项目提供的subscription.py,即可获得合集ID
      1
      python subscription.py
  4. 爬取合集:

    此时,运行collection.py即可批量下载合集内容(默认下载到./results中)

    1
    python collection.py --collection_id 合集ID

    可选参数:

    • --save-path 保存路径 指定保存路径,默认在当前目录的results文件内
    • --save_img 将图片内容保存到本地(默认保存图片链接)
    • --rewrite 覆盖本地已下载的内容
    • --limit_once 单次抓取数 单次抓取的文章数量(默认50篇)

    会将合集内所有文章保存至保存路径/合集名
    并在保存路径下建立以合集名为文件名的目录文件,方便使用

(虽然功能真的很简陋,但是如果能帮到你的话,求求给github项目点个star吧🥹我什么都不会做的