https://github.com/zzxzzk115/chili-api
吃力网 API,基于 Node.js + Axios + Cheerio + Selenium 的 API 服务器,爬取吃力网的搜索内容。
https://github.com/zzxzzk115/chili-api
api axios bittorrent cheerio docker magnet-link nodejs searcher selenium
Last synced: 7 months ago
JSON representation
吃力网 API,基于 Node.js + Axios + Cheerio + Selenium 的 API 服务器,爬取吃力网的搜索内容。
- Host: GitHub
- URL: https://github.com/zzxzzk115/chili-api
- Owner: zzxzzk115
- License: mit
- Created: 2024-11-25T06:59:29.000Z (11 months ago)
- Default Branch: master
- Last Pushed: 2024-11-25T17:02:11.000Z (11 months ago)
- Last Synced: 2025-02-13T21:37:20.460Z (9 months ago)
- Topics: api, axios, bittorrent, cheerio, docker, magnet-link, nodejs, searcher, selenium
- Language: JavaScript
- Homepage:
- Size: 18.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# chili-api
吃力网 API,基于 Node.js + Axios + Cheerio + Selenium 的 API 服务器,爬取吃力网的搜索内容。
首次请求会通过 Selenium 缓存真实目标网址,比较耗时,后面就不耗时了。
## API 请求格式
仅支持 `GET` 请求:
参数:
|名称|解释|类型|
|---|---|---|
|q|查询的关键字|string|
|page|页码|int|
|type|响应类型,可选的值有 text/json/markdown |string|
样例请求:
`http://localhost:3000/?q=星际穿越&page=1&type=text`
## Docker-Compose 运行(推荐,配置简单,可用于 NAS)
```bash
services:
selenium:
image: selenium/standalone-chrome:latest
ports:
- "4444:4444"
chili-api:
image: zzxzzk115/chili-api-app:latest
ports:
- "3000:3000"
environment:
- SELENIUM_REMOTE_URL=http://selenium:4444/wd/hub
- NODE_TLS_REJECT_UNAUTHORIZED=0
# - HTTP_PROXY=http://: # Optional
depends_on:
- selenium
```
## Docker 运行(一般推荐)
### 运行 Selenium 容器
首先,启动 Selenium 容器:
```bash
docker run -d -p 4444:4444 -p 7900:7900 --shm-size="2g" selenium/standalone-chromium:latest
```
- 这会启动一个 Selenium 容器,映射端口 4444(用于 WebDriver)和 7900(用于 VNC 访问)。
- `--shm-size="2g"` 是为了增加共享内存大小,以支持无头浏览器。
### 运行本项目
然后,运行本项目:
```bash
docker run -d -p 3000:3000 -e SELENIUM_REMOTE_URL=http://selenium:4444/wd/hub zzxzzk115/chili-api-app:latest
```
- 确保 `SELENIUM_REMOTE_URL` 环境变量的值正确。
- 如果你的 Node.js 应用在 Docker 容器中运行,并且 Selenium 容器也在同一个 Docker 网络中,可以使用容器名称 `http://selenium:4444/wd/hub`。
## Node 运行(不推荐,仅用于开发)
```bash
git clone https://github.com/zzxzzk115/chili-api.git
cd chili-api
node server.js
```
## 注意事项
可能需要科学上网环境,开启代理,设置 HTTP_PROXY 变量。