网站是否有可能阻止.click()?

时间:2017-05-16 16:38:47

标签: javascript jquery ajax facebook


我正在设计一个简单的facebook poke bot,但我想要它 只返回选定的用户。
这是我的代码:

var PokeTo = ["Mark Zen", "Kornel Zaminski"];
var interval = 1000; //1 second

var selector = "a:contains(";
var selector2 = ")";

if (window.location.href.indexOf("/pokes/") > -1) {
    $(document).ready(function()
    {
        window.setInterval(function(){
            PokeTo.forEach(function(name)
            {
                if($(selector+name+selector2).length)
                {
                    var parentDiv = $(selector+name+selector2).first().parent().parent().parent().parent().parent();
                    var target = parentDiv.children().first().children().children().first();
                    target.click();
                }
            }); 
        }, interval);
    });
}

现在可以正确找到元素,但.click()方法似乎什么都不做。
我注意到facebook使用了ajax,但是它阻止了.click请求吗? 我也注意到其他人使用.click()方法没有问题,所以我不确定为什么我的工作不正常 谢谢你的帮助。
此外,如果这有帮助,我使用此脚本注入器:https://chrome.google.com/webstore/detail/custom-javascript-for-web/poakhlngfciodnhlhhgnaaelnpjljija

3 个答案:

答案 0 :(得分:0)

通过阅读你的代码我真的不明白你在那里尝试做什么。

我的回答是看看用于处理Facebook功能的FB Javascript SDK。 Facebook SDK for JavaScript with jQuery

答案 1 :(得分:0)

我认为语句base_names <- na.omit(unique(stringr::str_extract(c(names(DF1), names(DF2)), ".+(?=_levels$)"))) base_names #[1] "d1" "d2" "d3" 可能存在一些错误。尝试使用result <- as.data.frame( setNames( lapply(base_names, function(x) { reorder(factor(DF2[[paste0(x, "_labels")]]), DF1[[paste0(x, "_levels")]]) }), base_names ) ) result # d1 d2 d3 #1 boy east <3kg #2 dont know south 3kg #3 girl east >3kg #4 boy east 3kg str(result) #'data.frame': 4 obs. of 3 variables: # $ d1: Factor w/ 3 levels "dont know","girl",..: 3 1 2 3 # ..- attr(*, "scores")= num [1:3(1d)] 2 0 1 # .. ..- attr(*, "dimnames")=List of 1 # .. .. ..$ : chr "boy" "dont know" "girl" # $ d2: Factor w/ 2 levels "south","east": 2 1 2 2 # ..- attr(*, "scores")= num [1:2(1d)] 2 1 # .. ..- attr(*, "dimnames")=List of 1 # .. .. ..$ : chr "east" "south" # $ d3: Factor w/ 3 levels "<3kg",">3kg",..: 1 3 2 3 # ..- attr(*, "scores")= num [1:3(1d)] 0 1 2 # .. ..- attr(*, "dimnames")=List of 1 # .. .. ..$ : chr "<3kg" ">3kg" "3kg" 。这应该有用。

答案 2 :(得分:0)

使用jQuery trigger方法代替click

target.trigger('click')

确保target是jQuery对象。