Imacros - 检查 CSV 中的重复值

Imacros - Check for duplicate value in a CSV

火狐 - 52.0.1 iMacros - 8.9.7 Windows10

我想知道如何检查该值是否已存在于特定 CSV 中。

假设我正在从 facebook 中提取帖子,我想确保只提取新帖子。 示例代码 - TAG POS={{!LOOP}} TYPE=A ATTR=CLASS:POST EXTRACT=TXT

假设您的 CSV 文件具有 'fbposts.csv.txt' 名称并且位于 'D:\iMacros\Downloads' 文件夹中。您可以尝试以下解决方法作为某种解决方案:

SET filePosts "fbposts.csv.txt"
SET folderPosts "D:/iMacros/Downloads"
SET urlFbPage https://www.facebook.com/...

SET filePosts EVAL("{{!LOOP}} == 1 ? 'file:///{{folderPosts}}/{{filePosts}}' : 'javascript:undefined;';")
URL GOTO={{filePosts}}
SET extPos EVAL("{{!LOOP}} == 1 ? 1 : 0;")
SET !ERRORIGNORE YES
TAG POS={{extPos}} TYPE=* ATTR=* EXTRACT=TXT
SET !ERRORIGNORE NO
SET text EVAL("{{!LOOP}} == 1 ? '{{!EXTRACT}}' : '{{text}}';")
SET !EXTRACT NULL

SET urlFbPage EVAL("{{!LOOP}} == 1 ? '{{urlFbPage}}' : 'javascript:undefined;';")
URL GOTO={{urlFbPage}}
TAG POS={{!LOOP}} TYPE=A ATTR=CLASS:POST EXTRACT=TXT

SET folderPosts EVAL("var reg = new RegExp('/', 'g'); '{{text}}'.indexOf('{{!EXTRACT}}') > -1 ? '' : '{{folderPosts}}'.replace(reg, '\\');")
SET !ERRORIGNORE YES
SAVEAS TYPE=EXTRACT FOLDER={{folderPosts}} FILE={{filePosts}}
SET !ERRORIGNORE NO