如何使用Selenium / Python模拟onclick(JavaScript)

时间:2016-04-30 20:11:00

标签: javascript python selenium

我正在使用Python / Selenium点击下载文件的网站上的图标。我知道如何使用Selenium单击常规按钮,但这个有点棘手,因为它不是常规按钮,而且它正在进行Javascript调用。我已经尝试了几个find_element_by调用但无法访问此元素。谁能想到一种使用selenium调用点击这个的方法?

当我在网络浏览器中检查下载图标的元素时,这就是我得到的:

void permutations_print(char *permutations, int index, int length) {
    if (index == length) {
        printf("\"%s\"\n", permutations);
    }
    for (int i = index; i < length; i++) {
        rotate(permutations, i, index);
        permutations_to_array(permutations, index + 1, length);
        rotate_back(permutations, index, i);
    }
}

void rotate(char to_swap[], int i, int j) {
    char temp = to_swap[i];
    for (int k = i; k > j; k--) {
        to_swap[k] = to_swap[k - 1];
    }
    to_swap[j] = temp;
}

void rotate_back(char to_swap[], int i, int j) {
    char tmp = to_swap[i];
    for (int k = i; k < j; k++) {
        to_swap[k] = to_swap[k + 1];
    }
    to_swap[j] = tmp;
}

提前致谢

1 个答案:

答案 0 :(得分:1)

如何通过onclick属性的部分来定位元素:

driver.find_element_by_css_selector("a[onlick*=DownloadData]").click();

其中*=表示“包含”。