mirror of
https://github.com/internetarchive/brozzler.git
synced 2025-08-06 05:24:19 -04:00
Allow clicking on already clicked element to continue in behaviors if click_until_hard_timeout is set to true
This commit is contained in:
parent
b9973c7cae
commit
2ed96f9b59
3 changed files with 13 additions and 3 deletions
|
@ -8,7 +8,8 @@ var umbraBehavior = {
|
||||||
var somethingLeftBelow = false;
|
var somethingLeftBelow = false;
|
||||||
var somethingLeftAbove = false;
|
var somethingLeftAbove = false;
|
||||||
var cssSelector = "${click_css_selector}";
|
var cssSelector = "${click_css_selector}";
|
||||||
|
var clickUntilTimeout = "${click_until_hard_timeout}";
|
||||||
|
|
||||||
var iframes = document.querySelectorAll("iframe");
|
var iframes = document.querySelectorAll("iframe");
|
||||||
var documents = Array(iframes.length + 1);
|
var documents = Array(iframes.length + 1);
|
||||||
documents[0] = document;
|
documents[0] = document;
|
||||||
|
@ -22,7 +23,7 @@ var umbraBehavior = {
|
||||||
var clickTargets = documents[j].querySelectorAll(cssSelector);
|
var clickTargets = documents[j].querySelectorAll(cssSelector);
|
||||||
|
|
||||||
for ( var i = 0; i < clickTargets.length; i++) {
|
for ( var i = 0; i < clickTargets.length; i++) {
|
||||||
if (clickTargets[i].umbraClicked) {
|
if (clickTargets[i].umbraClicked && !clickUntilTimeout) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -32,7 +32,11 @@ class Behavior:
|
||||||
behavior_js = os.path.sep.join(__file__.split(os.path.sep)[:-1] + ["behaviors.d"] + [behavior["behavior_js"]])
|
behavior_js = os.path.sep.join(__file__.split(os.path.sep)[:-1] + ["behaviors.d"] + [behavior["behavior_js"]])
|
||||||
behavior["script"] = open(behavior_js, encoding="utf-8").read()
|
behavior["script"] = open(behavior_js, encoding="utf-8").read()
|
||||||
elif "click_css_selector" in behavior:
|
elif "click_css_selector" in behavior:
|
||||||
behavior["script"] = simpleclicks_js_template.substitute(click_css_selector=behavior["click_css_selector"])
|
if "click_until_hard_timeout" in behavior:
|
||||||
|
click_until_hard_timeout_value=behavior["click_until_hard_timeout"]
|
||||||
|
else:
|
||||||
|
click_until_hard_timeout_value = False
|
||||||
|
behavior["script"] = simpleclicks_js_template.substitute(click_css_selector=behavior["click_css_selector"], click_until_hard_timeout=click_until_hard_timeout_value)
|
||||||
|
|
||||||
return Behavior._behaviors
|
return Behavior._behaviors
|
||||||
|
|
||||||
|
|
|
@ -48,6 +48,11 @@ behaviors:
|
||||||
url_regex: '^https?://(?:www\.)?youtube.com/.*$'
|
url_regex: '^https?://(?:www\.)?youtube.com/.*$'
|
||||||
click_css_selector: span.load-more-text
|
click_css_selector: span.load-more-text
|
||||||
request_idle_timeout_sec: 10
|
request_idle_timeout_sec: 10
|
||||||
|
- # https://webarchive.jira.com/browse/ARI-4725
|
||||||
|
url_regex: '^https?://(?:www\.)?moma.org/.*$'
|
||||||
|
click_css_selector: button[data-more-results-bottom-button]
|
||||||
|
click_until_hard_timeout: True
|
||||||
|
request_idle_timeout_sec: 10
|
||||||
- # default fallback brhavior
|
- # default fallback brhavior
|
||||||
url_regex: '^.*$'
|
url_regex: '^.*$'
|
||||||
request_idle_timeout_sec: 10
|
request_idle_timeout_sec: 10
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue