我想在我的Facebook时间表中清除我的旧帖子。 我已经尝试使用JS来自动执行此操作,但我无法实现目标。 对我来说,奇怪的是,如果我尝试单步,它们就能正常工作,当我把它们放在一起时它就不起作用。
选择 - 并单击 - 确认按钮以删除帖子(它不起作用)
尝试选择确认按钮(删除帖子),它为空。 但是,如果我尝试执行步骤号。它在1和2之后有效。
这是我的代码,我在时间线的特定年份部分从Firefox Scratchpad(Shift + F4)运行它(点击facebook.com/me上的一年)
``` //如果FB中的区域设置与en-US不同,请替换这些值 让l10nALabel =“故事选项”; 让l10nDelete =“删除”; 让l10nCButton =“删除帖子”; //如果脚本无法正常运行,请更改此值 让延迟= 1000; function sleep(delay){ //从此帖Put a Delay in Javascript Put a Delay in Javascript中获取的代码段 var start = new Date()。getTime(); while(new Date()。getTime()< start + delay); }
getElementByText = function(selector,text){ els = document.querySelectorAll(selector); for(i = 0; i
deletePost = function(post,delay){ post.click(); 睡眠(延迟); let delb = getElementByText(“span”,l10nDelete); 的console.log(delb); delb.click(); 睡眠(延迟); let cb = getElementByText(“button”,l10nCButton); 的console.log(CB); cb.click(); }
让a = document.querySelectorAll('[aria-label =“'+ l10nALabel +'”]') deletePost(a [0],延迟);
```
答案 0 :(得分:1)
使用javascript来自动执行命令并不是正确的方法! Facebook已经为这些实践建立了安全措施,如果你成功地按照自己的方式去做,主要的问题就是为什么会这样做你以这种低效的方式做到这一点。
我们有API /库(官方的)有一个原因。您应该使用facebook图形API来执行此类操作。 https://developers.facebook.com/docs/graph-api