@jackwener/opencli 1.4.0 → 1.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/actions/setup-chrome/action.yml +5 -4
- package/.github/workflows/ci.yml +17 -3
- package/.github/workflows/e2e-headed.yml +16 -3
- package/CHANGELOG.md +23 -0
- package/PRIVACY.md +57 -0
- package/README.md +1 -1
- package/README.zh-CN.md +1 -1
- package/SKILL.md +101 -2
- package/dist/cli-manifest.json +720 -32
- package/dist/clis/apple-podcasts/search.js +2 -1
- package/dist/clis/arxiv/search.js +2 -2
- package/dist/clis/bbc/news.js +0 -1
- package/dist/clis/ctrip/search.js +0 -1
- package/dist/clis/douyin/_shared/browser-fetch.d.ts +10 -0
- package/dist/clis/douyin/_shared/browser-fetch.js +30 -0
- package/dist/clis/douyin/_shared/browser-fetch.test.d.ts +1 -0
- package/dist/clis/douyin/_shared/browser-fetch.test.js +31 -0
- package/dist/clis/douyin/_shared/creation-id.d.ts +1 -0
- package/dist/clis/douyin/_shared/creation-id.js +5 -0
- package/dist/clis/douyin/_shared/creation-id.test.d.ts +1 -0
- package/dist/clis/douyin/_shared/creation-id.test.js +22 -0
- package/dist/clis/douyin/_shared/imagex-upload.d.ts +20 -0
- package/dist/clis/douyin/_shared/imagex-upload.js +53 -0
- package/dist/clis/douyin/_shared/imagex-upload.test.d.ts +1 -0
- package/dist/clis/douyin/_shared/imagex-upload.test.js +87 -0
- package/dist/clis/douyin/_shared/sts2.d.ts +8 -0
- package/dist/clis/douyin/_shared/sts2.js +15 -0
- package/dist/clis/douyin/_shared/text-extra.d.ts +18 -0
- package/dist/clis/douyin/_shared/text-extra.js +15 -0
- package/dist/clis/douyin/_shared/text-extra.test.d.ts +1 -0
- package/dist/clis/douyin/_shared/text-extra.test.js +37 -0
- package/dist/clis/douyin/_shared/timing.d.ts +2 -0
- package/dist/clis/douyin/_shared/timing.js +22 -0
- package/dist/clis/douyin/_shared/timing.test.d.ts +1 -0
- package/dist/clis/douyin/_shared/timing.test.js +28 -0
- package/dist/clis/douyin/_shared/tos-upload-short-read.test.d.ts +11 -0
- package/dist/clis/douyin/_shared/tos-upload-short-read.test.js +83 -0
- package/dist/clis/douyin/_shared/tos-upload.d.ts +53 -0
- package/dist/clis/douyin/_shared/tos-upload.js +295 -0
- package/dist/clis/douyin/_shared/tos-upload.test.d.ts +1 -0
- package/dist/clis/douyin/_shared/tos-upload.test.js +229 -0
- package/dist/clis/douyin/_shared/transcode.d.ts +27 -0
- package/dist/clis/douyin/_shared/transcode.js +45 -0
- package/dist/clis/douyin/_shared/transcode.test.d.ts +1 -0
- package/dist/clis/douyin/_shared/transcode.test.js +93 -0
- package/dist/clis/douyin/_shared/types.d.ts +26 -0
- package/dist/clis/douyin/_shared/types.js +1 -0
- package/dist/clis/douyin/activities.d.ts +1 -0
- package/dist/clis/douyin/activities.js +20 -0
- package/dist/clis/douyin/activities.test.d.ts +1 -0
- package/dist/clis/douyin/activities.test.js +22 -0
- package/dist/clis/douyin/collections.d.ts +1 -0
- package/dist/clis/douyin/collections.js +22 -0
- package/dist/clis/douyin/collections.test.d.ts +1 -0
- package/dist/clis/douyin/collections.test.js +23 -0
- package/dist/clis/douyin/delete.d.ts +1 -0
- package/dist/clis/douyin/delete.js +18 -0
- package/dist/clis/douyin/delete.test.d.ts +1 -0
- package/dist/clis/douyin/delete.test.js +11 -0
- package/dist/clis/douyin/draft.d.ts +14 -0
- package/dist/clis/douyin/draft.js +237 -0
- package/dist/clis/douyin/draft.test.d.ts +1 -0
- package/dist/clis/douyin/draft.test.js +11 -0
- package/dist/clis/douyin/drafts.d.ts +1 -0
- package/dist/clis/douyin/drafts.js +23 -0
- package/dist/clis/douyin/drafts.test.d.ts +1 -0
- package/dist/clis/douyin/drafts.test.js +11 -0
- package/dist/clis/douyin/hashtag.d.ts +1 -0
- package/dist/clis/douyin/hashtag.js +45 -0
- package/dist/clis/douyin/hashtag.test.d.ts +1 -0
- package/dist/clis/douyin/hashtag.test.js +25 -0
- package/dist/clis/douyin/location.d.ts +1 -0
- package/dist/clis/douyin/location.js +24 -0
- package/dist/clis/douyin/location.test.d.ts +1 -0
- package/dist/clis/douyin/location.test.js +23 -0
- package/dist/clis/douyin/profile.d.ts +1 -0
- package/dist/clis/douyin/profile.js +28 -0
- package/dist/clis/douyin/profile.test.d.ts +1 -0
- package/dist/clis/douyin/profile.test.js +11 -0
- package/dist/clis/douyin/publish.d.ts +14 -0
- package/dist/clis/douyin/publish.js +288 -0
- package/dist/clis/douyin/publish.test.d.ts +1 -0
- package/dist/clis/douyin/publish.test.js +38 -0
- package/dist/clis/douyin/stats.d.ts +1 -0
- package/dist/clis/douyin/stats.js +27 -0
- package/dist/clis/douyin/stats.test.d.ts +1 -0
- package/dist/clis/douyin/stats.test.js +22 -0
- package/dist/clis/douyin/update.d.ts +1 -0
- package/dist/clis/douyin/update.js +31 -0
- package/dist/clis/douyin/update.test.d.ts +1 -0
- package/dist/clis/douyin/update.test.js +11 -0
- package/dist/clis/douyin/videos.d.ts +1 -0
- package/dist/clis/douyin/videos.js +34 -0
- package/dist/clis/douyin/videos.test.d.ts +1 -0
- package/dist/clis/douyin/videos.test.js +11 -0
- package/dist/clis/hackernews/search.yaml +1 -1
- package/dist/clis/instagram/search.yaml +2 -1
- package/dist/clis/linux-do/search.yaml +3 -1
- package/dist/clis/medium/search.js +1 -1
- package/dist/clis/reuters/search.js +0 -1
- package/dist/clis/twitter/search.js +5 -3
- package/dist/clis/twitter/search.test.js +54 -2
- package/dist/clis/weibo/comments.d.ts +1 -0
- package/dist/clis/weibo/comments.js +53 -0
- package/dist/clis/weibo/feed.d.ts +1 -0
- package/dist/clis/weibo/feed.js +56 -0
- package/dist/clis/weibo/hot.js +0 -1
- package/dist/clis/weibo/me.d.ts +1 -0
- package/dist/clis/weibo/me.js +76 -0
- package/dist/clis/weibo/post.d.ts +1 -0
- package/dist/clis/weibo/post.js +75 -0
- package/dist/clis/weibo/user.d.ts +1 -0
- package/dist/clis/weibo/user.js +63 -0
- package/dist/clis/weibo/utils.d.ts +6 -0
- package/dist/clis/weibo/utils.js +30 -0
- package/dist/clis/weread/search.js +3 -2
- package/dist/clis/xueqiu/search.yaml +2 -1
- package/dist/clis/yahoo-finance/quote.js +0 -1
- package/dist/clis/youtube/channel.d.ts +1 -0
- package/dist/clis/youtube/channel.js +150 -0
- package/dist/clis/youtube/comments.d.ts +1 -0
- package/dist/clis/youtube/comments.js +95 -0
- package/dist/clis/youtube/search.js +0 -1
- package/dist/clis/zhihu/search.yaml +2 -1
- package/dist/external-clis.yaml +0 -17
- package/dist/weread-search-regression.test.d.ts +1 -0
- package/dist/weread-search-regression.test.js +39 -0
- package/docs/.vitepress/config.mts +13 -0
- package/docs/adapters/browser/douyin.md +75 -0
- package/docs/adapters/browser/twitter.md +6 -0
- package/docs/adapters/index.md +6 -1
- package/extension/dist/background.js +508 -518
- package/extension/manifest.json +6 -2
- package/extension/package.json +1 -1
- package/extension/popup.html +84 -0
- package/extension/popup.js +25 -0
- package/extension/src/background.ts +20 -1
- package/package.json +1 -1
- package/src/clis/apple-podcasts/search.ts +2 -1
- package/src/clis/arxiv/search.ts +2 -2
- package/src/clis/bbc/news.ts +0 -1
- package/src/clis/ctrip/search.ts +0 -1
- package/src/clis/douyin/_shared/browser-fetch.test.ts +38 -0
- package/src/clis/douyin/_shared/browser-fetch.ts +45 -0
- package/src/clis/douyin/_shared/creation-id.test.ts +26 -0
- package/src/clis/douyin/_shared/creation-id.ts +8 -0
- package/src/clis/douyin/_shared/imagex-upload.test.ts +113 -0
- package/src/clis/douyin/_shared/imagex-upload.ts +76 -0
- package/src/clis/douyin/_shared/sts2.ts +20 -0
- package/src/clis/douyin/_shared/text-extra.test.ts +42 -0
- package/src/clis/douyin/_shared/text-extra.ts +33 -0
- package/src/clis/douyin/_shared/timing.test.ts +38 -0
- package/src/clis/douyin/_shared/timing.ts +22 -0
- package/src/clis/douyin/_shared/tos-upload-short-read.test.ts +102 -0
- package/src/clis/douyin/_shared/tos-upload.test.ts +281 -0
- package/src/clis/douyin/_shared/tos-upload.ts +444 -0
- package/src/clis/douyin/_shared/transcode.test.ts +117 -0
- package/src/clis/douyin/_shared/transcode.ts +78 -0
- package/src/clis/douyin/_shared/types.ts +29 -0
- package/src/clis/douyin/activities.test.ts +25 -0
- package/src/clis/douyin/activities.ts +23 -0
- package/src/clis/douyin/collections.test.ts +26 -0
- package/src/clis/douyin/collections.ts +25 -0
- package/src/clis/douyin/delete.test.ts +12 -0
- package/src/clis/douyin/delete.ts +20 -0
- package/src/clis/douyin/draft.test.ts +12 -0
- package/src/clis/douyin/draft.ts +282 -0
- package/src/clis/douyin/drafts.test.ts +12 -0
- package/src/clis/douyin/drafts.ts +27 -0
- package/src/clis/douyin/hashtag.test.ts +28 -0
- package/src/clis/douyin/hashtag.ts +56 -0
- package/src/clis/douyin/location.test.ts +26 -0
- package/src/clis/douyin/location.ts +27 -0
- package/src/clis/douyin/profile.test.ts +12 -0
- package/src/clis/douyin/profile.ts +37 -0
- package/src/clis/douyin/publish.test.ts +45 -0
- package/src/clis/douyin/publish.ts +340 -0
- package/src/clis/douyin/stats.test.ts +25 -0
- package/src/clis/douyin/stats.ts +30 -0
- package/src/clis/douyin/update.test.ts +12 -0
- package/src/clis/douyin/update.ts +43 -0
- package/src/clis/douyin/videos.test.ts +12 -0
- package/src/clis/douyin/videos.ts +49 -0
- package/src/clis/hackernews/search.yaml +1 -1
- package/src/clis/instagram/search.yaml +2 -1
- package/src/clis/linux-do/search.yaml +3 -1
- package/src/clis/medium/search.ts +1 -1
- package/src/clis/reuters/search.ts +0 -1
- package/src/clis/twitter/search.test.ts +69 -2
- package/src/clis/twitter/search.ts +5 -3
- package/src/clis/weibo/comments.ts +54 -0
- package/src/clis/weibo/feed.ts +57 -0
- package/src/clis/weibo/hot.ts +0 -1
- package/src/clis/weibo/me.ts +77 -0
- package/src/clis/weibo/post.ts +77 -0
- package/src/clis/weibo/user.ts +64 -0
- package/src/clis/weibo/utils.ts +32 -0
- package/src/clis/weread/search.ts +3 -2
- package/src/clis/xueqiu/search.yaml +2 -1
- package/src/clis/yahoo-finance/quote.ts +0 -1
- package/src/clis/youtube/channel.ts +155 -0
- package/src/clis/youtube/comments.ts +97 -0
- package/src/clis/youtube/search.ts +0 -1
- package/src/clis/zhihu/search.yaml +2 -1
- package/src/external-clis.yaml +0 -17
- package/src/weread-search-regression.test.ts +44 -0
- package/tests/e2e/browser-public-extended.test.ts +162 -0
- package/tests/e2e/browser-public.test.ts +7 -146
- package/vitest.config.ts +24 -17
package/dist/cli-manifest.json
CHANGED
|
@@ -219,7 +219,8 @@
|
|
|
219
219
|
"title",
|
|
220
220
|
"author",
|
|
221
221
|
"episodes",
|
|
222
|
-
"genre"
|
|
222
|
+
"genre",
|
|
223
|
+
"url"
|
|
223
224
|
]
|
|
224
225
|
},
|
|
225
226
|
{
|
|
@@ -307,7 +308,8 @@
|
|
|
307
308
|
"id",
|
|
308
309
|
"title",
|
|
309
310
|
"authors",
|
|
310
|
-
"published"
|
|
311
|
+
"published",
|
|
312
|
+
"url"
|
|
311
313
|
]
|
|
312
314
|
},
|
|
313
315
|
{
|
|
@@ -3314,35 +3316,501 @@
|
|
|
3314
3316
|
"browser": true,
|
|
3315
3317
|
"args": [
|
|
3316
3318
|
{
|
|
3317
|
-
"name": "text",
|
|
3319
|
+
"name": "text",
|
|
3320
|
+
"type": "str",
|
|
3321
|
+
"required": true,
|
|
3322
|
+
"positional": true,
|
|
3323
|
+
"help": "Message text to send"
|
|
3324
|
+
}
|
|
3325
|
+
],
|
|
3326
|
+
"type": "ts",
|
|
3327
|
+
"modulePath": "doubao-app/send.js",
|
|
3328
|
+
"domain": "doubao-app",
|
|
3329
|
+
"columns": [
|
|
3330
|
+
"Status",
|
|
3331
|
+
"Text"
|
|
3332
|
+
]
|
|
3333
|
+
},
|
|
3334
|
+
{
|
|
3335
|
+
"site": "doubao-app",
|
|
3336
|
+
"name": "status",
|
|
3337
|
+
"description": "Check CDP connection to Doubao desktop app",
|
|
3338
|
+
"strategy": "ui",
|
|
3339
|
+
"browser": true,
|
|
3340
|
+
"args": [],
|
|
3341
|
+
"type": "ts",
|
|
3342
|
+
"modulePath": "doubao-app/status.js",
|
|
3343
|
+
"domain": "doubao-app",
|
|
3344
|
+
"columns": [
|
|
3345
|
+
"Status",
|
|
3346
|
+
"Url",
|
|
3347
|
+
"Title"
|
|
3348
|
+
]
|
|
3349
|
+
},
|
|
3350
|
+
{
|
|
3351
|
+
"site": "douyin",
|
|
3352
|
+
"name": "activities",
|
|
3353
|
+
"description": "官方活动列表",
|
|
3354
|
+
"strategy": "cookie",
|
|
3355
|
+
"browser": true,
|
|
3356
|
+
"args": [],
|
|
3357
|
+
"type": "ts",
|
|
3358
|
+
"modulePath": "douyin/activities.js",
|
|
3359
|
+
"domain": "creator.douyin.com",
|
|
3360
|
+
"columns": [
|
|
3361
|
+
"activity_id",
|
|
3362
|
+
"title",
|
|
3363
|
+
"end_time"
|
|
3364
|
+
]
|
|
3365
|
+
},
|
|
3366
|
+
{
|
|
3367
|
+
"site": "douyin",
|
|
3368
|
+
"name": "collections",
|
|
3369
|
+
"description": "合集列表",
|
|
3370
|
+
"strategy": "cookie",
|
|
3371
|
+
"browser": true,
|
|
3372
|
+
"args": [
|
|
3373
|
+
{
|
|
3374
|
+
"name": "limit",
|
|
3375
|
+
"type": "int",
|
|
3376
|
+
"default": 20,
|
|
3377
|
+
"required": false,
|
|
3378
|
+
"help": ""
|
|
3379
|
+
}
|
|
3380
|
+
],
|
|
3381
|
+
"type": "ts",
|
|
3382
|
+
"modulePath": "douyin/collections.js",
|
|
3383
|
+
"domain": "creator.douyin.com",
|
|
3384
|
+
"columns": [
|
|
3385
|
+
"mix_id",
|
|
3386
|
+
"name",
|
|
3387
|
+
"item_count"
|
|
3388
|
+
]
|
|
3389
|
+
},
|
|
3390
|
+
{
|
|
3391
|
+
"site": "douyin",
|
|
3392
|
+
"name": "delete",
|
|
3393
|
+
"description": "删除作品",
|
|
3394
|
+
"strategy": "cookie",
|
|
3395
|
+
"browser": true,
|
|
3396
|
+
"args": [
|
|
3397
|
+
{
|
|
3398
|
+
"name": "aweme_id",
|
|
3399
|
+
"type": "str",
|
|
3400
|
+
"required": true,
|
|
3401
|
+
"positional": true,
|
|
3402
|
+
"help": "作品 ID"
|
|
3403
|
+
}
|
|
3404
|
+
],
|
|
3405
|
+
"type": "ts",
|
|
3406
|
+
"modulePath": "douyin/delete.js",
|
|
3407
|
+
"domain": "creator.douyin.com",
|
|
3408
|
+
"columns": [
|
|
3409
|
+
"status"
|
|
3410
|
+
]
|
|
3411
|
+
},
|
|
3412
|
+
{
|
|
3413
|
+
"site": "douyin",
|
|
3414
|
+
"name": "draft",
|
|
3415
|
+
"description": "上传视频并保存为草稿",
|
|
3416
|
+
"strategy": "cookie",
|
|
3417
|
+
"browser": true,
|
|
3418
|
+
"args": [
|
|
3419
|
+
{
|
|
3420
|
+
"name": "video",
|
|
3421
|
+
"type": "str",
|
|
3422
|
+
"required": true,
|
|
3423
|
+
"positional": true,
|
|
3424
|
+
"help": "视频文件路径"
|
|
3425
|
+
},
|
|
3426
|
+
{
|
|
3427
|
+
"name": "title",
|
|
3428
|
+
"type": "str",
|
|
3429
|
+
"required": true,
|
|
3430
|
+
"help": "视频标题(≤30字)"
|
|
3431
|
+
},
|
|
3432
|
+
{
|
|
3433
|
+
"name": "caption",
|
|
3434
|
+
"type": "str",
|
|
3435
|
+
"default": "",
|
|
3436
|
+
"required": false,
|
|
3437
|
+
"help": "正文内容(≤1000字,支持 #话题)"
|
|
3438
|
+
},
|
|
3439
|
+
{
|
|
3440
|
+
"name": "cover",
|
|
3441
|
+
"type": "str",
|
|
3442
|
+
"default": "",
|
|
3443
|
+
"required": false,
|
|
3444
|
+
"help": "封面图片路径"
|
|
3445
|
+
},
|
|
3446
|
+
{
|
|
3447
|
+
"name": "visibility",
|
|
3448
|
+
"type": "str",
|
|
3449
|
+
"default": "public",
|
|
3450
|
+
"required": false,
|
|
3451
|
+
"help": "",
|
|
3452
|
+
"choices": [
|
|
3453
|
+
"public",
|
|
3454
|
+
"friends",
|
|
3455
|
+
"private"
|
|
3456
|
+
]
|
|
3457
|
+
}
|
|
3458
|
+
],
|
|
3459
|
+
"type": "ts",
|
|
3460
|
+
"modulePath": "douyin/draft.js",
|
|
3461
|
+
"domain": "creator.douyin.com",
|
|
3462
|
+
"columns": [
|
|
3463
|
+
"status",
|
|
3464
|
+
"aweme_id"
|
|
3465
|
+
]
|
|
3466
|
+
},
|
|
3467
|
+
{
|
|
3468
|
+
"site": "douyin",
|
|
3469
|
+
"name": "drafts",
|
|
3470
|
+
"description": "获取草稿列表",
|
|
3471
|
+
"strategy": "cookie",
|
|
3472
|
+
"browser": true,
|
|
3473
|
+
"args": [
|
|
3474
|
+
{
|
|
3475
|
+
"name": "limit",
|
|
3476
|
+
"type": "int",
|
|
3477
|
+
"default": 20,
|
|
3478
|
+
"required": false,
|
|
3479
|
+
"help": ""
|
|
3480
|
+
}
|
|
3481
|
+
],
|
|
3482
|
+
"type": "ts",
|
|
3483
|
+
"modulePath": "douyin/drafts.js",
|
|
3484
|
+
"domain": "creator.douyin.com",
|
|
3485
|
+
"columns": [
|
|
3486
|
+
"aweme_id",
|
|
3487
|
+
"title",
|
|
3488
|
+
"create_time"
|
|
3489
|
+
]
|
|
3490
|
+
},
|
|
3491
|
+
{
|
|
3492
|
+
"site": "douyin",
|
|
3493
|
+
"name": "hashtag",
|
|
3494
|
+
"description": "话题搜索 / AI推荐 / 热点词",
|
|
3495
|
+
"strategy": "cookie",
|
|
3496
|
+
"browser": true,
|
|
3497
|
+
"args": [
|
|
3498
|
+
{
|
|
3499
|
+
"name": "action",
|
|
3500
|
+
"type": "str",
|
|
3501
|
+
"required": true,
|
|
3502
|
+
"positional": true,
|
|
3503
|
+
"help": "search=关键词搜索 suggest=AI推荐 hot=热点词",
|
|
3504
|
+
"choices": [
|
|
3505
|
+
"search",
|
|
3506
|
+
"suggest",
|
|
3507
|
+
"hot"
|
|
3508
|
+
]
|
|
3509
|
+
},
|
|
3510
|
+
{
|
|
3511
|
+
"name": "keyword",
|
|
3512
|
+
"type": "str",
|
|
3513
|
+
"default": "",
|
|
3514
|
+
"required": false,
|
|
3515
|
+
"help": "搜索关键词(search/hot 使用)"
|
|
3516
|
+
},
|
|
3517
|
+
{
|
|
3518
|
+
"name": "cover",
|
|
3519
|
+
"type": "str",
|
|
3520
|
+
"default": "",
|
|
3521
|
+
"required": false,
|
|
3522
|
+
"help": "封面 URI(suggest 使用)"
|
|
3523
|
+
},
|
|
3524
|
+
{
|
|
3525
|
+
"name": "limit",
|
|
3526
|
+
"type": "int",
|
|
3527
|
+
"default": 10,
|
|
3528
|
+
"required": false,
|
|
3529
|
+
"help": ""
|
|
3530
|
+
}
|
|
3531
|
+
],
|
|
3532
|
+
"type": "ts",
|
|
3533
|
+
"modulePath": "douyin/hashtag.js",
|
|
3534
|
+
"domain": "creator.douyin.com",
|
|
3535
|
+
"columns": [
|
|
3536
|
+
"name",
|
|
3537
|
+
"id",
|
|
3538
|
+
"view_count"
|
|
3539
|
+
]
|
|
3540
|
+
},
|
|
3541
|
+
{
|
|
3542
|
+
"site": "douyin",
|
|
3543
|
+
"name": "location",
|
|
3544
|
+
"description": "地理位置 POI 搜索",
|
|
3545
|
+
"strategy": "cookie",
|
|
3546
|
+
"browser": true,
|
|
3547
|
+
"args": [
|
|
3548
|
+
{
|
|
3549
|
+
"name": "query",
|
|
3550
|
+
"type": "str",
|
|
3551
|
+
"required": true,
|
|
3552
|
+
"positional": true,
|
|
3553
|
+
"help": "地名关键词"
|
|
3554
|
+
},
|
|
3555
|
+
{
|
|
3556
|
+
"name": "limit",
|
|
3557
|
+
"type": "int",
|
|
3558
|
+
"default": 20,
|
|
3559
|
+
"required": false,
|
|
3560
|
+
"help": ""
|
|
3561
|
+
}
|
|
3562
|
+
],
|
|
3563
|
+
"type": "ts",
|
|
3564
|
+
"modulePath": "douyin/location.js",
|
|
3565
|
+
"domain": "creator.douyin.com",
|
|
3566
|
+
"columns": [
|
|
3567
|
+
"poi_id",
|
|
3568
|
+
"name",
|
|
3569
|
+
"address",
|
|
3570
|
+
"city"
|
|
3571
|
+
]
|
|
3572
|
+
},
|
|
3573
|
+
{
|
|
3574
|
+
"site": "douyin",
|
|
3575
|
+
"name": "profile",
|
|
3576
|
+
"description": "获取账号信息",
|
|
3577
|
+
"strategy": "cookie",
|
|
3578
|
+
"browser": true,
|
|
3579
|
+
"args": [],
|
|
3580
|
+
"type": "ts",
|
|
3581
|
+
"modulePath": "douyin/profile.js",
|
|
3582
|
+
"domain": "creator.douyin.com",
|
|
3583
|
+
"columns": [
|
|
3584
|
+
"uid",
|
|
3585
|
+
"nickname",
|
|
3586
|
+
"follower_count",
|
|
3587
|
+
"following_count",
|
|
3588
|
+
"aweme_count"
|
|
3589
|
+
]
|
|
3590
|
+
},
|
|
3591
|
+
{
|
|
3592
|
+
"site": "douyin",
|
|
3593
|
+
"name": "publish",
|
|
3594
|
+
"description": "定时发布视频到抖音(必须设置 2h ~ 14天后的发布时间)",
|
|
3595
|
+
"strategy": "cookie",
|
|
3596
|
+
"browser": true,
|
|
3597
|
+
"args": [
|
|
3598
|
+
{
|
|
3599
|
+
"name": "video",
|
|
3600
|
+
"type": "str",
|
|
3601
|
+
"required": true,
|
|
3602
|
+
"positional": true,
|
|
3603
|
+
"help": "视频文件路径"
|
|
3604
|
+
},
|
|
3605
|
+
{
|
|
3606
|
+
"name": "title",
|
|
3607
|
+
"type": "str",
|
|
3608
|
+
"required": true,
|
|
3609
|
+
"help": "视频标题(≤30字)"
|
|
3610
|
+
},
|
|
3611
|
+
{
|
|
3612
|
+
"name": "schedule",
|
|
3613
|
+
"type": "str",
|
|
3614
|
+
"required": true,
|
|
3615
|
+
"help": "定时发布时间(ISO8601 或 Unix 秒,2h ~ 14天后)"
|
|
3616
|
+
},
|
|
3617
|
+
{
|
|
3618
|
+
"name": "caption",
|
|
3619
|
+
"type": "str",
|
|
3620
|
+
"default": "",
|
|
3621
|
+
"required": false,
|
|
3622
|
+
"help": "正文内容(≤1000字,支持 #话题)"
|
|
3623
|
+
},
|
|
3624
|
+
{
|
|
3625
|
+
"name": "cover",
|
|
3626
|
+
"type": "str",
|
|
3627
|
+
"default": "",
|
|
3628
|
+
"required": false,
|
|
3629
|
+
"help": "封面图片路径(不提供时使用视频截帧)"
|
|
3630
|
+
},
|
|
3631
|
+
{
|
|
3632
|
+
"name": "visibility",
|
|
3633
|
+
"type": "str",
|
|
3634
|
+
"default": "public",
|
|
3635
|
+
"required": false,
|
|
3636
|
+
"help": "",
|
|
3637
|
+
"choices": [
|
|
3638
|
+
"public",
|
|
3639
|
+
"friends",
|
|
3640
|
+
"private"
|
|
3641
|
+
]
|
|
3642
|
+
},
|
|
3643
|
+
{
|
|
3644
|
+
"name": "allow_download",
|
|
3645
|
+
"type": "bool",
|
|
3646
|
+
"default": false,
|
|
3647
|
+
"required": false,
|
|
3648
|
+
"help": "允许下载"
|
|
3649
|
+
},
|
|
3650
|
+
{
|
|
3651
|
+
"name": "collection",
|
|
3652
|
+
"type": "str",
|
|
3653
|
+
"default": "",
|
|
3654
|
+
"required": false,
|
|
3655
|
+
"help": "合集 ID"
|
|
3656
|
+
},
|
|
3657
|
+
{
|
|
3658
|
+
"name": "activity",
|
|
3659
|
+
"type": "str",
|
|
3660
|
+
"default": "",
|
|
3661
|
+
"required": false,
|
|
3662
|
+
"help": "活动 ID"
|
|
3663
|
+
},
|
|
3664
|
+
{
|
|
3665
|
+
"name": "poi_id",
|
|
3666
|
+
"type": "str",
|
|
3667
|
+
"default": "",
|
|
3668
|
+
"required": false,
|
|
3669
|
+
"help": "地理位置 ID"
|
|
3670
|
+
},
|
|
3671
|
+
{
|
|
3672
|
+
"name": "poi_name",
|
|
3673
|
+
"type": "str",
|
|
3674
|
+
"default": "",
|
|
3675
|
+
"required": false,
|
|
3676
|
+
"help": "地理位置名称"
|
|
3677
|
+
},
|
|
3678
|
+
{
|
|
3679
|
+
"name": "hotspot",
|
|
3680
|
+
"type": "str",
|
|
3681
|
+
"default": "",
|
|
3682
|
+
"required": false,
|
|
3683
|
+
"help": "关联热点词"
|
|
3684
|
+
},
|
|
3685
|
+
{
|
|
3686
|
+
"name": "no_safety_check",
|
|
3687
|
+
"type": "bool",
|
|
3688
|
+
"default": false,
|
|
3689
|
+
"required": false,
|
|
3690
|
+
"help": "跳过内容安全检测"
|
|
3691
|
+
},
|
|
3692
|
+
{
|
|
3693
|
+
"name": "sync_toutiao",
|
|
3694
|
+
"type": "bool",
|
|
3695
|
+
"default": false,
|
|
3696
|
+
"required": false,
|
|
3697
|
+
"help": "同步发布到头条"
|
|
3698
|
+
}
|
|
3699
|
+
],
|
|
3700
|
+
"type": "ts",
|
|
3701
|
+
"modulePath": "douyin/publish.js",
|
|
3702
|
+
"domain": "creator.douyin.com",
|
|
3703
|
+
"columns": [
|
|
3704
|
+
"status",
|
|
3705
|
+
"aweme_id",
|
|
3706
|
+
"url",
|
|
3707
|
+
"publish_time"
|
|
3708
|
+
]
|
|
3709
|
+
},
|
|
3710
|
+
{
|
|
3711
|
+
"site": "douyin",
|
|
3712
|
+
"name": "stats",
|
|
3713
|
+
"description": "作品数据分析",
|
|
3714
|
+
"strategy": "cookie",
|
|
3715
|
+
"browser": true,
|
|
3716
|
+
"args": [
|
|
3717
|
+
{
|
|
3718
|
+
"name": "aweme_id",
|
|
3719
|
+
"type": "str",
|
|
3720
|
+
"required": true,
|
|
3721
|
+
"positional": true,
|
|
3722
|
+
"help": ""
|
|
3723
|
+
}
|
|
3724
|
+
],
|
|
3725
|
+
"type": "ts",
|
|
3726
|
+
"modulePath": "douyin/stats.js",
|
|
3727
|
+
"domain": "creator.douyin.com",
|
|
3728
|
+
"columns": [
|
|
3729
|
+
"metric",
|
|
3730
|
+
"value"
|
|
3731
|
+
]
|
|
3732
|
+
},
|
|
3733
|
+
{
|
|
3734
|
+
"site": "douyin",
|
|
3735
|
+
"name": "update",
|
|
3736
|
+
"description": "更新视频信息",
|
|
3737
|
+
"strategy": "cookie",
|
|
3738
|
+
"browser": true,
|
|
3739
|
+
"args": [
|
|
3740
|
+
{
|
|
3741
|
+
"name": "aweme_id",
|
|
3742
|
+
"type": "str",
|
|
3743
|
+
"required": true,
|
|
3744
|
+
"positional": true,
|
|
3745
|
+
"help": ""
|
|
3746
|
+
},
|
|
3747
|
+
{
|
|
3748
|
+
"name": "reschedule",
|
|
3318
3749
|
"type": "str",
|
|
3319
|
-
"
|
|
3320
|
-
"
|
|
3321
|
-
"help": "
|
|
3750
|
+
"default": "",
|
|
3751
|
+
"required": false,
|
|
3752
|
+
"help": "新的发布时间(ISO8601 或 Unix 秒)"
|
|
3753
|
+
},
|
|
3754
|
+
{
|
|
3755
|
+
"name": "caption",
|
|
3756
|
+
"type": "str",
|
|
3757
|
+
"default": "",
|
|
3758
|
+
"required": false,
|
|
3759
|
+
"help": "新的正文内容"
|
|
3322
3760
|
}
|
|
3323
3761
|
],
|
|
3324
3762
|
"type": "ts",
|
|
3325
|
-
"modulePath": "
|
|
3326
|
-
"domain": "
|
|
3763
|
+
"modulePath": "douyin/update.js",
|
|
3764
|
+
"domain": "creator.douyin.com",
|
|
3327
3765
|
"columns": [
|
|
3328
|
-
"
|
|
3329
|
-
"Text"
|
|
3766
|
+
"status"
|
|
3330
3767
|
]
|
|
3331
3768
|
},
|
|
3332
3769
|
{
|
|
3333
|
-
"site": "
|
|
3334
|
-
"name": "
|
|
3335
|
-
"description": "
|
|
3336
|
-
"strategy": "
|
|
3770
|
+
"site": "douyin",
|
|
3771
|
+
"name": "videos",
|
|
3772
|
+
"description": "获取作品列表",
|
|
3773
|
+
"strategy": "cookie",
|
|
3337
3774
|
"browser": true,
|
|
3338
|
-
"args": [
|
|
3775
|
+
"args": [
|
|
3776
|
+
{
|
|
3777
|
+
"name": "limit",
|
|
3778
|
+
"type": "int",
|
|
3779
|
+
"default": 20,
|
|
3780
|
+
"required": false,
|
|
3781
|
+
"help": "每页数量"
|
|
3782
|
+
},
|
|
3783
|
+
{
|
|
3784
|
+
"name": "page",
|
|
3785
|
+
"type": "int",
|
|
3786
|
+
"default": 1,
|
|
3787
|
+
"required": false,
|
|
3788
|
+
"help": "页码"
|
|
3789
|
+
},
|
|
3790
|
+
{
|
|
3791
|
+
"name": "status",
|
|
3792
|
+
"type": "str",
|
|
3793
|
+
"default": "all",
|
|
3794
|
+
"required": false,
|
|
3795
|
+
"help": "",
|
|
3796
|
+
"choices": [
|
|
3797
|
+
"all",
|
|
3798
|
+
"published",
|
|
3799
|
+
"reviewing",
|
|
3800
|
+
"scheduled"
|
|
3801
|
+
]
|
|
3802
|
+
}
|
|
3803
|
+
],
|
|
3339
3804
|
"type": "ts",
|
|
3340
|
-
"modulePath": "
|
|
3341
|
-
"domain": "
|
|
3805
|
+
"modulePath": "douyin/videos.js",
|
|
3806
|
+
"domain": "creator.douyin.com",
|
|
3342
3807
|
"columns": [
|
|
3343
|
-
"
|
|
3344
|
-
"
|
|
3345
|
-
"
|
|
3808
|
+
"aweme_id",
|
|
3809
|
+
"title",
|
|
3810
|
+
"status",
|
|
3811
|
+
"play_count",
|
|
3812
|
+
"digg_count",
|
|
3813
|
+
"create_time"
|
|
3346
3814
|
]
|
|
3347
3815
|
},
|
|
3348
3816
|
{
|
|
@@ -4159,7 +4627,8 @@
|
|
|
4159
4627
|
"title",
|
|
4160
4628
|
"score",
|
|
4161
4629
|
"author",
|
|
4162
|
-
"comments"
|
|
4630
|
+
"comments",
|
|
4631
|
+
"url"
|
|
4163
4632
|
],
|
|
4164
4633
|
"pipeline": [
|
|
4165
4634
|
{
|
|
@@ -4758,14 +5227,15 @@
|
|
|
4758
5227
|
"username",
|
|
4759
5228
|
"name",
|
|
4760
5229
|
"verified",
|
|
4761
|
-
"private"
|
|
5230
|
+
"private",
|
|
5231
|
+
"url"
|
|
4762
5232
|
],
|
|
4763
5233
|
"pipeline": [
|
|
4764
5234
|
{
|
|
4765
5235
|
"navigate": "https://www.instagram.com"
|
|
4766
5236
|
},
|
|
4767
5237
|
{
|
|
4768
|
-
"evaluate": "(async () => {\n const query = ${{ args.query | json }};\n const limit = ${{ args.limit }};\n const res = await fetch(\n 'https://www.instagram.com/web/search/topsearch/?query=' + encodeURIComponent(query) + '&context=user',\n {\n credentials: 'include',\n headers: { 'X-IG-App-ID': '936619743392459' }\n }\n );\n if (!res.ok) throw new Error('HTTP ' + res.status + ' - make sure you are logged in to Instagram');\n const data = await res.json();\n const users = (data?.users || []).slice(0, limit);\n return users.map((item, i) => ({\n rank: i + 1,\n username: item.user?.username || '',\n name: item.user?.full_name || '',\n verified: item.user?.is_verified ? 'Yes' : 'No',\n private: item.user?.is_private ? 'Yes' : 'No',\n }));\n})()\n"
|
|
5238
|
+
"evaluate": "(async () => {\n const query = ${{ args.query | json }};\n const limit = ${{ args.limit }};\n const res = await fetch(\n 'https://www.instagram.com/web/search/topsearch/?query=' + encodeURIComponent(query) + '&context=user',\n {\n credentials: 'include',\n headers: { 'X-IG-App-ID': '936619743392459' }\n }\n );\n if (!res.ok) throw new Error('HTTP ' + res.status + ' - make sure you are logged in to Instagram');\n const data = await res.json();\n const users = (data?.users || []).slice(0, limit);\n return users.map((item, i) => ({\n rank: i + 1,\n username: item.user?.username || '',\n name: item.user?.full_name || '',\n verified: item.user?.is_verified ? 'Yes' : 'No',\n private: item.user?.is_private ? 'Yes' : 'No',\n url: 'https://www.instagram.com/' + (item.user?.username || ''),\n }));\n})()\n"
|
|
4769
5239
|
}
|
|
4770
5240
|
],
|
|
4771
5241
|
"type": "yaml"
|
|
@@ -5748,14 +6218,15 @@
|
|
|
5748
6218
|
"title",
|
|
5749
6219
|
"views",
|
|
5750
6220
|
"likes",
|
|
5751
|
-
"replies"
|
|
6221
|
+
"replies",
|
|
6222
|
+
"url"
|
|
5752
6223
|
],
|
|
5753
6224
|
"pipeline": [
|
|
5754
6225
|
{
|
|
5755
6226
|
"navigate": "https://linux.do"
|
|
5756
6227
|
},
|
|
5757
6228
|
{
|
|
5758
|
-
"evaluate": "(async () => {\n const keyword = ${{ args.query | json }};\n const res = await fetch('/search.json?q=' + encodeURIComponent(keyword), { credentials: 'include' });\n if (!res.ok) throw new Error('HTTP ' + res.status + ' - 请先登录 linux.do');\n let data;\n try { data = await res.json(); } catch { throw new Error('响应不是有效 JSON - 请先登录 linux.do'); }\n const topics = data?.topics || [];\n return topics.slice(0, ${{ args.limit }}).map(t => ({\n title: t.title,\n views: t.views,\n likes: t.like_count,\n replies: (t.posts_count || 1) - 1,\n }));\n})()\n"
|
|
6229
|
+
"evaluate": "(async () => {\n const keyword = ${{ args.query | json }};\n const res = await fetch('/search.json?q=' + encodeURIComponent(keyword), { credentials: 'include' });\n if (!res.ok) throw new Error('HTTP ' + res.status + ' - 请先登录 linux.do');\n let data;\n try { data = await res.json(); } catch { throw new Error('响应不是有效 JSON - 请先登录 linux.do'); }\n const topics = data?.topics || [];\n return topics.slice(0, ${{ args.limit }}).map(t => ({\n title: t.title,\n views: t.views,\n likes: t.like_count,\n replies: (t.posts_count || 1) - 1,\n url: 'https://linux.do/t/topic/' + t.id,\n }));\n})()\n"
|
|
5759
6230
|
},
|
|
5760
6231
|
{
|
|
5761
6232
|
"map": {
|
|
@@ -5763,7 +6234,8 @@
|
|
|
5763
6234
|
"title": "${{ item.title }}",
|
|
5764
6235
|
"views": "${{ item.views }}",
|
|
5765
6236
|
"likes": "${{ item.likes }}",
|
|
5766
|
-
"replies": "${{ item.replies }}"
|
|
6237
|
+
"replies": "${{ item.replies }}",
|
|
6238
|
+
"url": "${{ item.url }}"
|
|
5767
6239
|
}
|
|
5768
6240
|
},
|
|
5769
6241
|
{
|
|
@@ -6072,7 +6544,8 @@
|
|
|
6072
6544
|
"author",
|
|
6073
6545
|
"date",
|
|
6074
6546
|
"readTime",
|
|
6075
|
-
"claps"
|
|
6547
|
+
"claps",
|
|
6548
|
+
"url"
|
|
6076
6549
|
]
|
|
6077
6550
|
},
|
|
6078
6551
|
{
|
|
@@ -8803,6 +9276,17 @@
|
|
|
8803
9276
|
"positional": true,
|
|
8804
9277
|
"help": ""
|
|
8805
9278
|
},
|
|
9279
|
+
{
|
|
9280
|
+
"name": "filter",
|
|
9281
|
+
"type": "string",
|
|
9282
|
+
"default": "top",
|
|
9283
|
+
"required": false,
|
|
9284
|
+
"help": "",
|
|
9285
|
+
"choices": [
|
|
9286
|
+
"top",
|
|
9287
|
+
"live"
|
|
9288
|
+
]
|
|
9289
|
+
},
|
|
8806
9290
|
{
|
|
8807
9291
|
"name": "limit",
|
|
8808
9292
|
"type": "int",
|
|
@@ -9471,6 +9955,68 @@
|
|
|
9471
9955
|
],
|
|
9472
9956
|
"navigateBefore": false
|
|
9473
9957
|
},
|
|
9958
|
+
{
|
|
9959
|
+
"site": "weibo",
|
|
9960
|
+
"name": "comments",
|
|
9961
|
+
"description": "Get comments on a Weibo post",
|
|
9962
|
+
"strategy": "cookie",
|
|
9963
|
+
"browser": true,
|
|
9964
|
+
"args": [
|
|
9965
|
+
{
|
|
9966
|
+
"name": "id",
|
|
9967
|
+
"type": "str",
|
|
9968
|
+
"required": true,
|
|
9969
|
+
"positional": true,
|
|
9970
|
+
"help": "Post ID (numeric idstr)"
|
|
9971
|
+
},
|
|
9972
|
+
{
|
|
9973
|
+
"name": "limit",
|
|
9974
|
+
"type": "int",
|
|
9975
|
+
"default": 20,
|
|
9976
|
+
"required": false,
|
|
9977
|
+
"help": "Number of comments (max 50)"
|
|
9978
|
+
}
|
|
9979
|
+
],
|
|
9980
|
+
"type": "ts",
|
|
9981
|
+
"modulePath": "weibo/comments.js",
|
|
9982
|
+
"domain": "weibo.com",
|
|
9983
|
+
"columns": [
|
|
9984
|
+
"rank",
|
|
9985
|
+
"author",
|
|
9986
|
+
"text",
|
|
9987
|
+
"likes",
|
|
9988
|
+
"replies",
|
|
9989
|
+
"time"
|
|
9990
|
+
]
|
|
9991
|
+
},
|
|
9992
|
+
{
|
|
9993
|
+
"site": "weibo",
|
|
9994
|
+
"name": "feed",
|
|
9995
|
+
"description": "Weibo home timeline (posts from followed users)",
|
|
9996
|
+
"strategy": "cookie",
|
|
9997
|
+
"browser": true,
|
|
9998
|
+
"args": [
|
|
9999
|
+
{
|
|
10000
|
+
"name": "limit",
|
|
10001
|
+
"type": "int",
|
|
10002
|
+
"default": 15,
|
|
10003
|
+
"required": false,
|
|
10004
|
+
"help": "Number of posts (max 50)"
|
|
10005
|
+
}
|
|
10006
|
+
],
|
|
10007
|
+
"type": "ts",
|
|
10008
|
+
"modulePath": "weibo/feed.js",
|
|
10009
|
+
"domain": "weibo.com",
|
|
10010
|
+
"columns": [
|
|
10011
|
+
"author",
|
|
10012
|
+
"text",
|
|
10013
|
+
"reposts",
|
|
10014
|
+
"comments",
|
|
10015
|
+
"likes",
|
|
10016
|
+
"time",
|
|
10017
|
+
"url"
|
|
10018
|
+
]
|
|
10019
|
+
},
|
|
9474
10020
|
{
|
|
9475
10021
|
"site": "weibo",
|
|
9476
10022
|
"name": "hot",
|
|
@@ -9498,6 +10044,49 @@
|
|
|
9498
10044
|
"url"
|
|
9499
10045
|
]
|
|
9500
10046
|
},
|
|
10047
|
+
{
|
|
10048
|
+
"site": "weibo",
|
|
10049
|
+
"name": "me",
|
|
10050
|
+
"description": "My Weibo profile info",
|
|
10051
|
+
"strategy": "cookie",
|
|
10052
|
+
"browser": true,
|
|
10053
|
+
"args": [],
|
|
10054
|
+
"type": "ts",
|
|
10055
|
+
"modulePath": "weibo/me.js",
|
|
10056
|
+
"domain": "weibo.com",
|
|
10057
|
+
"columns": [
|
|
10058
|
+
"screen_name",
|
|
10059
|
+
"uid",
|
|
10060
|
+
"followers",
|
|
10061
|
+
"following",
|
|
10062
|
+
"statuses",
|
|
10063
|
+
"verified",
|
|
10064
|
+
"location"
|
|
10065
|
+
]
|
|
10066
|
+
},
|
|
10067
|
+
{
|
|
10068
|
+
"site": "weibo",
|
|
10069
|
+
"name": "post",
|
|
10070
|
+
"description": "Get a single Weibo post",
|
|
10071
|
+
"strategy": "cookie",
|
|
10072
|
+
"browser": true,
|
|
10073
|
+
"args": [
|
|
10074
|
+
{
|
|
10075
|
+
"name": "id",
|
|
10076
|
+
"type": "str",
|
|
10077
|
+
"required": true,
|
|
10078
|
+
"positional": true,
|
|
10079
|
+
"help": "Post ID (numeric idstr or mblogid from URL)"
|
|
10080
|
+
}
|
|
10081
|
+
],
|
|
10082
|
+
"type": "ts",
|
|
10083
|
+
"modulePath": "weibo/post.js",
|
|
10084
|
+
"domain": "weibo.com",
|
|
10085
|
+
"columns": [
|
|
10086
|
+
"field",
|
|
10087
|
+
"value"
|
|
10088
|
+
]
|
|
10089
|
+
},
|
|
9501
10090
|
{
|
|
9502
10091
|
"site": "weibo",
|
|
9503
10092
|
"name": "search",
|
|
@@ -9531,6 +10120,36 @@
|
|
|
9531
10120
|
"url"
|
|
9532
10121
|
]
|
|
9533
10122
|
},
|
|
10123
|
+
{
|
|
10124
|
+
"site": "weibo",
|
|
10125
|
+
"name": "user",
|
|
10126
|
+
"description": "Get Weibo user profile",
|
|
10127
|
+
"strategy": "cookie",
|
|
10128
|
+
"browser": true,
|
|
10129
|
+
"args": [
|
|
10130
|
+
{
|
|
10131
|
+
"name": "id",
|
|
10132
|
+
"type": "str",
|
|
10133
|
+
"required": true,
|
|
10134
|
+
"positional": true,
|
|
10135
|
+
"help": "User ID (numeric uid) or screen name"
|
|
10136
|
+
}
|
|
10137
|
+
],
|
|
10138
|
+
"type": "ts",
|
|
10139
|
+
"modulePath": "weibo/user.js",
|
|
10140
|
+
"domain": "weibo.com",
|
|
10141
|
+
"columns": [
|
|
10142
|
+
"screen_name",
|
|
10143
|
+
"uid",
|
|
10144
|
+
"followers",
|
|
10145
|
+
"following",
|
|
10146
|
+
"statuses",
|
|
10147
|
+
"verified",
|
|
10148
|
+
"description",
|
|
10149
|
+
"location",
|
|
10150
|
+
"url"
|
|
10151
|
+
]
|
|
10152
|
+
},
|
|
9534
10153
|
{
|
|
9535
10154
|
"site": "weixin",
|
|
9536
10155
|
"name": "download",
|
|
@@ -9741,7 +10360,8 @@
|
|
|
9741
10360
|
"rank",
|
|
9742
10361
|
"title",
|
|
9743
10362
|
"author",
|
|
9744
|
-
"bookId"
|
|
10363
|
+
"bookId",
|
|
10364
|
+
"url"
|
|
9745
10365
|
]
|
|
9746
10366
|
},
|
|
9747
10367
|
{
|
|
@@ -10657,7 +11277,8 @@
|
|
|
10657
11277
|
"name",
|
|
10658
11278
|
"exchange",
|
|
10659
11279
|
"price",
|
|
10660
|
-
"changePercent"
|
|
11280
|
+
"changePercent",
|
|
11281
|
+
"url"
|
|
10661
11282
|
],
|
|
10662
11283
|
"pipeline": [
|
|
10663
11284
|
{
|
|
@@ -10672,7 +11293,8 @@
|
|
|
10672
11293
|
"name": "${{ item.name }}",
|
|
10673
11294
|
"exchange": "${{ item.exchange }}",
|
|
10674
11295
|
"price": "${{ item.price }}",
|
|
10675
|
-
"changePercent": "${{ item.changePercent }}"
|
|
11296
|
+
"changePercent": "${{ item.changePercent }}",
|
|
11297
|
+
"url": "${{ item.url }}"
|
|
10676
11298
|
}
|
|
10677
11299
|
},
|
|
10678
11300
|
{
|
|
@@ -11361,6 +11983,70 @@
|
|
|
11361
11983
|
"url"
|
|
11362
11984
|
]
|
|
11363
11985
|
},
|
|
11986
|
+
{
|
|
11987
|
+
"site": "youtube",
|
|
11988
|
+
"name": "channel",
|
|
11989
|
+
"description": "Get YouTube channel info and recent videos",
|
|
11990
|
+
"strategy": "cookie",
|
|
11991
|
+
"browser": true,
|
|
11992
|
+
"args": [
|
|
11993
|
+
{
|
|
11994
|
+
"name": "id",
|
|
11995
|
+
"type": "str",
|
|
11996
|
+
"required": true,
|
|
11997
|
+
"positional": true,
|
|
11998
|
+
"help": "Channel ID (UCxxxx) or handle (@name)"
|
|
11999
|
+
},
|
|
12000
|
+
{
|
|
12001
|
+
"name": "limit",
|
|
12002
|
+
"type": "int",
|
|
12003
|
+
"default": 10,
|
|
12004
|
+
"required": false,
|
|
12005
|
+
"help": "Max recent videos (max 30)"
|
|
12006
|
+
}
|
|
12007
|
+
],
|
|
12008
|
+
"type": "ts",
|
|
12009
|
+
"modulePath": "youtube/channel.js",
|
|
12010
|
+
"domain": "www.youtube.com",
|
|
12011
|
+
"columns": [
|
|
12012
|
+
"field",
|
|
12013
|
+
"value"
|
|
12014
|
+
]
|
|
12015
|
+
},
|
|
12016
|
+
{
|
|
12017
|
+
"site": "youtube",
|
|
12018
|
+
"name": "comments",
|
|
12019
|
+
"description": "Get YouTube video comments",
|
|
12020
|
+
"strategy": "cookie",
|
|
12021
|
+
"browser": true,
|
|
12022
|
+
"args": [
|
|
12023
|
+
{
|
|
12024
|
+
"name": "url",
|
|
12025
|
+
"type": "str",
|
|
12026
|
+
"required": true,
|
|
12027
|
+
"positional": true,
|
|
12028
|
+
"help": "YouTube video URL or video ID"
|
|
12029
|
+
},
|
|
12030
|
+
{
|
|
12031
|
+
"name": "limit",
|
|
12032
|
+
"type": "int",
|
|
12033
|
+
"default": 20,
|
|
12034
|
+
"required": false,
|
|
12035
|
+
"help": "Max comments (max 100)"
|
|
12036
|
+
}
|
|
12037
|
+
],
|
|
12038
|
+
"type": "ts",
|
|
12039
|
+
"modulePath": "youtube/comments.js",
|
|
12040
|
+
"domain": "www.youtube.com",
|
|
12041
|
+
"columns": [
|
|
12042
|
+
"rank",
|
|
12043
|
+
"author",
|
|
12044
|
+
"text",
|
|
12045
|
+
"likes",
|
|
12046
|
+
"replies",
|
|
12047
|
+
"time"
|
|
12048
|
+
]
|
|
12049
|
+
},
|
|
11364
12050
|
{
|
|
11365
12051
|
"site": "youtube",
|
|
11366
12052
|
"name": "search",
|
|
@@ -11593,7 +12279,8 @@
|
|
|
11593
12279
|
"title",
|
|
11594
12280
|
"type",
|
|
11595
12281
|
"author",
|
|
11596
|
-
"votes"
|
|
12282
|
+
"votes",
|
|
12283
|
+
"url"
|
|
11597
12284
|
],
|
|
11598
12285
|
"pipeline": [
|
|
11599
12286
|
{
|
|
@@ -11608,7 +12295,8 @@
|
|
|
11608
12295
|
"title": "${{ item.title }}",
|
|
11609
12296
|
"type": "${{ item.type }}",
|
|
11610
12297
|
"author": "${{ item.author }}",
|
|
11611
|
-
"votes": "${{ item.votes }}"
|
|
12298
|
+
"votes": "${{ item.votes }}",
|
|
12299
|
+
"url": "${{ item.url }}"
|
|
11612
12300
|
}
|
|
11613
12301
|
},
|
|
11614
12302
|
{
|