{"repo":"g089h515r806/nextcrawler","free":true,"listed":false,"github":"https://github.com/g089h515r806/nextcrawler","clone":"git clone https://github.com/g089h515r806/nextcrawler.git","description":"Next Crawler 是使用Playwright + Next.js + Prisma等主流技术搭建的网页数据采集器，通过可视化的UI进行配置，即可周期性的通过Playwright驱动浏览器爬取网页数据。","language":"JavaScript","stars":50,"topics":["crawler","nextjs","playwright","prisma"],"license":"MIT","category":"scrapers-browser-automation","readme_excerpt":"nextcrawler 简介 Next Crawler 是使用Playwright + Next.js + Prisma等主流技术搭建的网页数据采集器，通过可视化的UI进行配置，即可周期性的通过Playwright驱动浏览器爬取网页数据。内置支持 - 使用mozilla/readability智能识别网页正文; - 可配置的正文图片自动下载功能; - 可以选择的文件下载功能，支持PDF、MP3、MP4、等多种格式; - 可以配置的多字段解析; - 可以配置的Playwright基本动作; - 支持定时任务，并且可以配置周期采集数量; - 支持采集模板，并且支持导入导出; - 支持代理; - 支持错误日志; - 可选的基本用户认证管理; - 支持浏览器持久化上下文(完全真实浏览器); - 支持采集评论; - 支持批量导入、导出种子，支持导出种子的条目数据，采用excel格式。 - 内置支持yt-dlp,videodl两个视频下载工具，可以下载海量视频资源，如YouTube，抖音，快手，小红书，B站，TikTok，优酷，爱奇艺等等 安装指南 数据库 目前我们默认支持的是MYSQL，我们使用JSON字段存储任意数据，所以需要MYSQL最低版本5.7。MYSQL的安装请参考官方文档。 - Pgsql、sqlite目前尚未测试 Node.js版本 我们使用的是react19，next.js16。最低Node版本20.9. 安装流程 (1),下载了源代码以后，使用npm 命令安装依赖 - npm install (2),Playwright包安装以后，需要执行特有的安装步骤，用来安装下载使用的浏览器。 - npx playwright install (3), Prisma 数据库安装好了以后，启动数据库；请修改.env文件中的数据库连接信息，设置正确的数据库连接设置正确。 - DATABASE URL=\"mysql://root:root@localhost:3306/nextcrawler\" 创建对应的数据库： - create database nextcrawler; 自1.0-beta5版本以后，prisma升级到了7.x，需要生成客户端代码, 请确保tsc命令可用(npm install -g typescript) - npm run generateClient - 或者 npx prisma generate && tsc --project tsconfig.prisma.json 数据库初始化： - npx prisma migrate dev --name init 完成了上述操作，就可以使用 - npm run dev 启动系统了。 如果上面操作顺利，正常情况下，访问 http://localhost:3000/， 进入管理界面 采集下载视频 普通MP4视频是可以直接使用fetch保存到本地。对于专门视频网站的视频下载，我们内置支持了两个视频下载工具: - yt-dlp - videodl 前者支持大部分国际主流视频网站，后者对于中文视频网站提供了良好的支持。根据需要可有选择的安装它们，确保对应命令可用。 - 安装python - pip install -U \"yt-dlp[default]\" - pip install videofetch - 安装ffmpeg 并确保全局可用 具体可以参考两个工具的官方文档。如果你不需要下载视频，则无需安装. 视频教程 作者录制了相关的视频教程，放在了抖音上 - Next Crawler 简介","default_branch":null,"files":null,"tree":[],"storefront":"/r/g089h515r806","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/g089h515r806/nextcrawler/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}