[HTML] 纯文本查看 复制代码
{
"extVersion": "1.28.27",
"name": "小红书视频图片无水印下载",
"icon": "riDownloadLine",
"table": [],
"version": "1.28.27",
"drawflow": {
"edges": [
{
"data": {},
"events": {},
"id": "vueflow__edge-ExLnFJDpKZz7y1DUtMOYxExLnFJDpKZz7y1DUtMOYx-output-1-501phlm501phlm-input-1",
"markerEnd": "arrowclosed",
"selectable": true,
"source": "ExLnFJDpKZz7y1DUtMOYx",
"sourceHandle": "ExLnFJDpKZz7y1DUtMOYx-output-1",
"sourceX": 286.1717823402754,
"sourceY": 42.46877261712112,
"target": "501phlm",
"targetHandle": "501phlm-input-1",
"targetX": 334.07092870161136,
"targetY": 44.22004010124981,
"type": "custom",
"updatable": true
},
{
"data": {},
"events": {},
"id": "vueflow__edge-a873vwfa873vwf-output-1-ce2c9ojce2c9oj-input-1",
"markerEnd": "arrowclosed",
"selectable": true,
"source": "a873vwf",
"sourceHandle": "a873vwf-output-1",
"sourceX": 354.69029167433087,
"sourceY": 563.0970763486055,
"target": "ce2c9oj",
"targetHandle": "ce2c9oj-input-1",
"targetX": 422.23527818733805,
"targetY": 558.5312343510344,
"type": "custom",
"updatable": true
},
{
"data": {},
"events": {},
"id": "vueflow__edge-ce2c9ojce2c9oj-output-1-6sgybq96sgybq9-input-1",
"markerEnd": "arrowclosed",
"selectable": true,
"source": "ce2c9oj",
"sourceHandle": "ce2c9oj-output-1",
"sourceX": 654.235278187338,
"sourceY": 558.5312343510344,
"target": "6sgybq9",
"targetHandle": "6sgybq9-input-1",
"targetX": 795.1679324813967,
"targetY": 557.3170557288151,
"type": "custom",
"updatable": true
},
{
"data": {},
"events": {},
"id": "vueflow__edge-hs7f0hxhs7f0hx-output-fallback-wvwwp0twvwwp0t-input-1",
"markerEnd": "arrowclosed",
"selectable": true,
"source": "hs7f0hx",
"sourceHandle": "hs7f0hx-output-fallback",
"sourceX": 409.0393307634557,
"sourceY": 303.27441261588655,
"target": "wvwwp0t",
"targetHandle": "wvwwp0t-input-1",
"targetX": 557.7668458003008,
"targetY": 302.86706281703334,
"type": "custom",
"updatable": true
},
{
"data": {},
"events": {},
"id": "vueflow__edge-501phlm501phlm-output-1-nbtan4znbtan4z-input-1",
"markerEnd": "arrowclosed",
"selectable": true,
"source": "501phlm",
"sourceHandle": "501phlm-output-1",
"sourceX": 566.0709287016114,
"sourceY": 44.22004010124981,
"target": "nbtan4z",
"targetHandle": "nbtan4z-input-1",
"targetX": 623.5228822131037,
"targetY": 43.91852116424549,
"type": "custom",
"updatable": true
},
{
"data": {},
"events": {},
"id": "vueflow__edge-nbtan4znbtan4z-output-1-hs7f0hxhs7f0hx-input-1",
"markerEnd": "arrowclosed",
"selectable": true,
"source": "nbtan4z",
"sourceHandle": "nbtan4z-output-1",
"sourceX": 855.5228822131037,
"sourceY": 43.91852116424549,
"target": "hs7f0hx",
"targetHandle": "hs7f0hx-input-1",
"targetX": 113.03933076345572,
"targetY": 250.68066261588655,
"type": "custom",
"updatable": true
},
{
"data": {},
"events": {},
"id": "vueflow__edge-hs7f0hxhs7f0hx-output-PCyP_OJKBS1NvXgh_UNI4-59hzakh59hzakh-input-1",
"markerEnd": "arrowclosed",
"selectable": true,
"source": "hs7f0hx",
"sourceHandle": "hs7f0hx-output-PCyP_OJKBS1NvXgh_UNI4",
"sourceX": 410.0393307634557,
"sourceY": 261.27441261588655,
"target": "59hzakh",
"targetHandle": "59hzakh-input-1",
"targetX": 945.4584213550745,
"targetY": 176.72080143861655,
"type": "custom",
"updatable": true
},
{
"data": {},
"events": {},
"id": "vueflow__edge-6y13mum6y13mum-output-1-a873vwfa873vwf-input-1",
"markerEnd": "arrowclosed",
"selectable": true,
"source": "6y13mum",
"sourceHandle": "6y13mum-output-1",
"sourceX": 1570.4139181040352,
"sourceY": 335.37899825758376,
"target": "a873vwf",
"targetHandle": "a873vwf-input-1",
"targetX": 122.69029167433087,
"targetY": 563.0970763486055,
"type": "custom",
"updatable": true
},
{
"data": {},
"events": {},
"id": "vueflow__edge-wvwwp0twvwwp0t-output-1-hfzin6ghfzin6g-input-1",
"markerEnd": "arrowclosed",
"selectable": true,
"source": "wvwwp0t",
"sourceHandle": "wvwwp0t-output-1",
"sourceX": 789.7668458003008,
"sourceY": 302.86706281703334,
"target": "hfzin6g",
"targetHandle": "hfzin6g-input-1",
"targetX": 949.4584213550747,
"targetY": 300.72080143861655,
"type": "custom",
"updatable": true
},
{
"data": {},
"events": {},
"id": "vueflow__edge-hfzin6ghfzin6g-output-1-6y13mum6y13mum-input-1",
"markerEnd": "arrowclosed",
"selectable": true,
"source": "hfzin6g",
"sourceHandle": "hfzin6g-output-1",
"sourceX": 1181.4584213550747,
"sourceY": 300.72080143861655,
"target": "6y13mum",
"targetHandle": "6y13mum-input-1",
"targetX": 1338.4139181040352,
"targetY": 335.37899825758376,
"type": "custom",
"updatable": true
},
{
"data": {},
"events": {},
"id": "vueflow__edge-59hzakh59hzakh-output-1-6y13mum6y13mum-input-1",
"markerEnd": "arrowclosed",
"selectable": true,
"source": "59hzakh",
"sourceHandle": "59hzakh-output-1",
"sourceX": 1177.4584213550745,
"sourceY": 176.72080143861655,
"target": "6y13mum",
"targetHandle": "6y13mum-input-1",
"targetX": 1338.4139181040352,
"targetY": 335.37899825758376,
"type": "custom",
"updatable": true
},
{
"data": {},
"events": {},
"id": "vueflow__edge-59hzakh59hzakh-output-1-tsmy0u1tsmy0u1-input-1",
"markerEnd": "arrowclosed",
"selectable": true,
"source": "59hzakh",
"sourceHandle": "59hzakh-output-1",
"sourceX": 1177.4584213550745,
"sourceY": 176.72080143861655,
"target": "tsmy0u1",
"targetHandle": "tsmy0u1-input-1",
"targetX": 1330,
"targetY": 166,
"type": "custom",
"updatable": true
},
{
"data": {},
"events": {},
"id": "vueflow__edge-tsmy0u1tsmy0u1-output-1-y0wung8y0wung8-input-1",
"markerEnd": "arrowclosed",
"selectable": true,
"source": "tsmy0u1",
"sourceHandle": "tsmy0u1-output-1",
"sourceX": 1562,
"sourceY": 166,
"target": "y0wung8",
"targetHandle": "y0wung8-input-1",
"targetX": 1606,
"targetY": 164,
"type": "custom",
"updatable": true
},
{
"data": {},
"events": {},
"id": "vueflow__edge-hfzin6ghfzin6g-output-1-tsmy0u1tsmy0u1-input-1",
"markerEnd": "arrowclosed",
"selectable": true,
"source": "hfzin6g",
"sourceHandle": "hfzin6g-output-1",
"sourceX": 1181.4584213550747,
"sourceY": 300.72080143861655,
"target": "tsmy0u1",
"targetHandle": "tsmy0u1-input-1",
"targetX": 1330,
"targetY": 166,
"type": "custom",
"updatable": true
}
],
"nodes": [
{
"data": {
"activeInInput": false,
"contextMenuName": "",
"contextTypes": [],
"date": "",
"days": [],
"delay": 5,
"description": "",
"disableBlock": false,
"interval": 60,
"isUrlRegex": false,
"observeElement": {
"baseElOptions": {
"attributeFilter": [],
"attributes": false,
"characterData": false,
"childList": true,
"subtree": false
},
"baseSelector": "",
"matchPattern": "",
"selector": "",
"targetOptions": {
"attributeFilter": [],
"attributes": false,
"characterData": false,
"childList": true,
"subtree": false
}
},
"parameters": [],
"preferParamsInTab": false,
"shortcut": "",
"time": "00:00",
"type": "manual",
"url": ""
},
"events": {},
"id": "ExLnFJDpKZz7y1DUtMOYx",
"label": "trigger",
"position": {
"x": 74.1717823402754,
"y": 6.468772617121118
},
"type": "BlockBasic"
},
{
"data": {
"disableBlock": false
},
"events": {},
"id": "501phlm",
"label": "active-tab",
"position": {
"x": 354.07092870161136,
"y": 8.220040101249808
},
"type": "BlockBasic"
},
{
"data": {
"code": "// 假设htmlContent变量包含了通过HTTP GET请求获得的、包含转义字符的HTML内容\nlet htmlContent = automaRefData('variables', 'html');\n\n// 使用replace方法去除所有的转义反斜杠\\\nhtmlContent = htmlContent.replace(/\\\\/g, '');\n\n// 现在htmlContent已经是没有转义字符的HTML内容,可以进行正则表达式匹配\nconst urlRegex = /<meta name=\"og:video\" content=\"([^\"]+)\"/g;\nlet matches;\nconst urls = new Set(); // 使用Set来自动处理重复的URL\n\nwhile ((matches = urlRegex.exec(htmlContent)) !== null) {\n // 将每个匹配的URL添加到Set中\n urls.add(matches[1]);\n}\n\n// 转换Set为数组,这个数组包含了所有唯一的og:image URL\nconst uniqueUrls = Array.from(urls);\n\n// 使用automaSetVariable函数将结果数组存储在变量tt中\nautomaSetVariable('tt', uniqueUrls);\n",
"context": "website",
"description": "提取水印视频url",
"disableBlock": false,
"everyNewTab": false,
"preloadScripts": [],
"runBeforeLoad": false,
"timeout": 20000
},
"events": {},
"id": "ipjlm8z",
"label": "javascript-code",
"position": {
"x": 751.8568715036076,
"y": 707.6024429379647
},
"type": "BlockBasic"
},
{
"data": {
"description": "循环url",
"disableBlock": false,
"elementSelector": "",
"fromNumber": 0,
"loopData": "[]",
"loopId": "uukWs-",
"loopThrough": "variable",
"maxLoop": 0,
"referenceKey": "",
"resumeLastWorkflow": false,
"reverseLoop": false,
"startIndex": 0,
"toNumber": 2,
"variableName": "tt",
"waitForSelector": false,
"waitSelectorTimeout": 5000
},
"events": {},
"id": "a873vwf",
"label": "loop-data",
"position": {
"x": 142.69029167433087,
"y": 525.0970763486055
},
"type": "BlockBasic"
},
{
"data": {
"assignVariable": false,
"dataColumn": "",
"description": "时间命名图片",
"disableBlock": false,
"filename": "{{$date(\"timestamp\")}}.jpeg",
"findBy": "cssSelector",
"markEl": false,
"multiple": false,
"onConflict": "uniquify",
"saveData": true,
"saveDownloadIds": false,
"saveToGDrive": false,
"selector": "",
"type": "url",
"url": "{{loopData.uukWs-}}",
"variableName": "",
"waitForSelector": false,
"waitSelectorTimeout": 5000
},
"events": {},
"id": "ce2c9oj",
"label": "save-assets",
"position": {
"x": 442.23527818733805,
"y": 522.5312343510344
},
"type": "BlockBasic"
},
{
"data": {
"clearLoop": false,
"disableBlock": false,
"loopId": "uukWs-"
},
"events": {},
"id": "6sgybq9",
"label": "loop-breakpoint",
"position": {
"x": 815.1679324813967,
"y": 481.7311182288151
},
"type": "BlockLoopBreakpoint"
},
{
"data": {
"description": "等待输入url",
"disableBlock": false,
"parameters": [
{
"data": {
"masks": [
{
"isRegex": false,
"lazy": false,
"mask": ""
}
],
"required": false,
"unmaskValue": false,
"useMask": false
},
"defaultValue": "",
"description": "输入小红书文章地址 例如:https://www.xiaohongshu.com/explore/65cd732e000000000b00c0f5",
"id": "9jeC",
"name": "xiaoURL",
"placeholder": "Text",
"type": "string"
}
],
"timeout": 60000
},
"events": {},
"id": "wvwwp0t",
"label": "parameter-prompt",
"position": {
"x": 577.7668458003008,
"y": 266.86706281703334
},
"type": "BlockBasic"
},
{
"data": {
"assignVariable": true,
"dataColumn": "",
"description": "",
"disableBlock": false,
"qMatchPatterns": "",
"qTitle": "",
"saveData": false,
"type": "active-tab",
"variableName": "URL"
},
"events": {},
"id": "nbtan4z",
"label": "tab-url",
"position": {
"x": 643.5228822131037,
"y": 7.91852116424549
},
"type": "BlockBasic"
},
{
"data": {
"conditions": [
{
"conditions": [
{
"conditions": [
{
"id": "-hySTUZd7S4y1BLw8M-8m",
"items": [
{
"category": "value",
"data": {
"value": "{{variables.URL}}"
},
"id": "jT9c_GX2clA7we06vnUL3",
"type": "value"
},
{
"category": "compare",
"id": "-D1bYXr4-5a8spztAwTDC",
"type": "cnt"
},
{
"category": "value",
"data": {
"value": "https://www.xiaohongshu.com/explore"
},
"id": "Q8aiwjwdjCthQbUCqCCzj",
"type": "value"
}
]
}
],
"id": "4MuJe2k8UXcHm0DjKEoCZ"
}
],
"id": "PCyP_OJKBS1NvXgh_UNI4",
"name": "存在小红书页面"
}
],
"description": "",
"disableBlock": false,
"retryConditions": false,
"retryCount": 10,
"retryTimeout": 1000
},
"events": {},
"id": "hs7f0hx",
"label": "conditions",
"position": {
"x": 133.03933076345572,
"y": 172.09472511588655
},
"type": "BlockConditions"
},
{
"data": {
"assignVariable": true,
"body": "{}",
"contentType": "json",
"dataColumn": "",
"dataPath": "",
"description": "获取活动页文本",
"disableBlock": false,
"headers": [],
"method": "GET",
"responseType": "text",
"saveData": false,
"timeout": 10000,
"url": "{{variables.URL}}",
"variableName": "html"
},
"events": {},
"id": "59hzakh",
"label": "webhook",
"position": {
"x": 965.4584213550745,
"y": 128.72080143861655
},
"type": "BlockBasicWithFallback"
},
{
"data": {
"code": "// 假设htmlContent变量包含了通过HTTP GET请求获得的、包含转义字符的HTML内容\nlet htmlContent = automaRefData('variables', 'html');\n\n// 使用replace方法去除所有的转义反斜杠\\\nhtmlContent = htmlContent.replace(/\\\\/g, '');\n\n// 现在htmlContent已经是没有转义字符的HTML内容,可以进行正则表达式匹配\nconst urlRegex = /<meta name=\"og:image\" content=\"([^\"]+)\"/g;\nlet matches;\nconst urls = new Set(); // 使用Set来自动处理重复的URL\n\nwhile ((matches = urlRegex.exec(htmlContent)) !== null) {\n // 将每个匹配的URL添加到Set中\n urls.add(matches[1]);\n}\n\n// 转换Set为数组,这个数组包含了所有唯一的og:image URL\nconst uniqueUrls = Array.from(urls);\n\n// 使用automaSetVariable函数将结果数组存储在变量tt中\nautomaSetVariable('tt', uniqueUrls);\n",
"context": "website",
"description": "提取图片url",
"disableBlock": false,
"everyNewTab": false,
"preloadScripts": [],
"runBeforeLoad": false,
"timeout": 20000
},
"events": {},
"id": "6y13mum",
"label": "javascript-code",
"position": {
"x": 1358.4139181040352,
"y": 299.37899825758376
},
"type": "BlockBasic"
},
{
"data": {
"assignVariable": true,
"body": "{}",
"contentType": "text",
"dataColumn": "",
"dataPath": "",
"description": "获取输入页文本",
"disableBlock": false,
"headers": [],
"method": "GET",
"responseType": "text",
"saveData": false,
"timeout": 10000,
"url": "{{variables.xiaoURL}}",
"variableName": "html"
},
"events": {},
"id": "hfzin6g",
"label": "webhook",
"position": {
"x": 969.4584213550747,
"y": 252.72080143861655
},
"type": "BlockBasicWithFallback"
},
{
"data": {
"code": "// 使用automaRefData函数从Automa的变量系统中获取文本内容\nconst textData = automaRefData('variables', 'html');\n\n// 使用正则表达式匹配originVideoKey的值\nconst regex = /\"originVideoKey\":\\s*\"([^\"]+)\"/;\nconst match = regex.exec(textData);\n\nlet originVideoKey = \"\";\n\nif (match) {\n // 如果找到匹配项,则提取originVideoKey的值\n originVideoKey = match[1];\n\n // 转义originVideoKey的值,例如将\\u002F转换为/\n originVideoKey = originVideoKey.replace(/\\\\u002F/g, '/');\n}\n\n// 使用automaSetVariable函数将转义后的originVideoKey值存储在变量tt中\nautomaSetVariable('ttdd', originVideoKey);\n",
"context": "website",
"description": "获取originVideoKey",
"disableBlock": false,
"everyNewTab": false,
"preloadScripts": [],
"runBeforeLoad": false,
"timeout": 20000
},
"events": {},
"id": "tsmy0u1",
"label": "javascript-code",
"position": {
"x": 1350,
"y": 130
},
"type": "BlockBasic"
},
{
"data": {
"assignVariable": false,
"dataColumn": "",
"description": "时间命名视频",
"disableBlock": false,
"filename": "{{$date(\"timestamp\")}}.mp4",
"findBy": "cssSelector",
"markEl": false,
"multiple": false,
"onConflict": "uniquify",
"saveData": true,
"saveDownloadIds": false,
"saveToGDrive": false,
"selector": "",
"type": "url",
"url": "https://sns-video-hw.xhscdn.com/{{variables.ttdd}}",
"variableName": "",
"waitForSelector": false,
"waitSelectorTimeout": 5000
},
"events": {},
"id": "y0wung8",
"label": "save-assets",
"position": {
"x": 1626,
"y": 128
},
"type": "BlockBasic"
}
],
"position": [
-26,
152
],
"viewport": {
"x": -26,
"y": 152,
"zoom": 0.5
},
"zoom": 0.5
},
"settings": {
"blockDelay": 0,
"debugMode": false,
"defaultColumnName": "column",
"execContext": "popup",
"executedBlockOnWeb": false,
"inputAutocomplete": true,
"insertDefaultColumn": false,
"notification": true,
"onError": "stop-workflow",
"publicId": "",
"restartTimes": 3,
"reuseLastState": false,
"saveLog": true
},
"globalData": "{\n\t\"key\":\"value\"\n}",
"description": "",
"includedWorkflows": {}
}