{% extends 'base.html' %} {% block content %} {% from '_helpers.jinja' import render_field, render_checkbox_field, render_button %} {% from '_common_fields.jinja' import render_common_settings_form %}
{{ render_field(form.url, placeholder="https://...", required=true, class="m-d") }} Some sites use JavaScript to create the content, for this you should use the Chrome/WebDriver Fetcher
{{ render_field(form.title, class="m-d") }}
{{ render_field(form.tag) }} Organisational tag/group name used in the main listing page
{{ render_field(form.time_between_check, class="time-check-widget") }} {% if has_empty_checktime %} Currently using the default global settings, change to another value if you want to be specific. {% else %} Set to blank to use the default global settings. {% endif %}
{{ render_checkbox_field(form.extract_title_as_title) }}
{{ render_field(form.fetch_backend, class="fetch-backend") }}

Use the Basic method (default) where your watched site doesn't need Javascript to render.

The Chrome/Javascript method requires a network connection to a running WebDriver+Chrome server, set by the ENV var 'WEBDRIVER_URL'.

{% if form.proxy %}
{{ render_field(form.proxy, class="fetch-backend-proxy") }} Choose a proxy for this watch
{% endif %}
If you're having trouble waiting for the page to be fully rendered (text missing etc), try increasing the 'wait' time here.
This will wait n seconds before extracting the text.
{{ render_field(form.webdriver_delay) }}
{% if using_global_webdriver_wait %}
Using the current global default settings
{% endif %}
Request override is currently only used by the Basic fast Plaintext/HTTP Client method.
{{ render_field(form.method) }}
{{ render_field(form.headers, rows=5, placeholder="Example Cookie: foobar User-Agent: wonderbra 1.0") }}
{{ render_field(form.body, rows=5, placeholder="Example { \"name\":\"John\", \"age\":30, \"car\":null }") }}
{{ render_checkbox_field(form.ignore_status_codes) }}

Note: These settings override the global settings for this watch.
{{ render_common_settings_form(form, current_base_url, emailprefix) }}
Pro-tips:
  • Use the preview page to see your filters and triggers highlighted.
  • Some sites use JavaScript to create the content, for this you should use the Chrome/WebDriver Fetcher
{{ render_field(form.css_filter, placeholder=".class-name or #some-id, or other CSS selector rule.", class="m-d") }}
  • CSS - Limit text to this CSS rule, only text matching this CSS rule is included.
  • JSON - Limit text to this JSON rule, using JSONPath, prefix with "json:", use json:$ to force re-formatting if required, test your JSONPath here
  • XPath - Limit text to this XPath rule, simply start with a forward-slash, example //*[contains(@class, 'sametext')] or xpath://*[contains(@class, 'sametext')], test your XPath here
Please be sure that you thoroughly understand how to write CSS or JSONPath, XPath selector rules before filing an issue on GitHub! here for more CSS selector help.
{{ render_field(form.subtractive_selectors, rows=5, placeholder="header footer nav .stockticker") }}
  • Remove HTML element(s) by CSS selector before text conversion.
  • Add multiple elements or CSS selectors per line to ignore multiple parts of the HTML.
{{ render_field(form.ignore_text, rows=5, placeholder="Some text to ignore in a line /some.regex\d{2}/ for case-INsensitive regex ") }}
  • Each line processed separately, any line matching will be ignored (removed before creating the checksum)
  • Regular Expression support, wrap the line in forward slash /regex/
  • Changing this will affect the comparison checksum which may trigger an alert
  • Use the preview/show current tab to see ignores
{{ render_field(form.trigger_text, rows=5, placeholder="Some text to wait for in a line /some.regex\d{2}/ for case-INsensitive regex ") }}
  • Text to wait for before triggering a change/notification, all text and regex are tested case-insensitive.
  • Trigger text is processed from the result-text that comes out of any CSS/JSON Filters for this watch
  • Each line is processed separately (think of each line as "OR")
  • Note: Wrap in forward slash / to use regex example: /foo\d/
{{ render_field(form.extract_text, rows=5, placeholder="/some.regex\d{2}/ case-insensitive regex") }}
  • Extracts text in the final output after other filters using regular expressions, for example \d+ online
  • One line per regular-expression.
{% if visualselector_enabled %} {% if visualselector_data_is_ready %}
Clear selection One moment, fetching screenshot and element information..
Currently: Loading...

Beta! The Visual Selector is new and there may be minor bugs, please report pages that dont work, help us to improve this software!

{% else %} Screenshot and element data is not available or not yet ready. {% endif %} {% else %}

Sorry, this functionality only works with Playwright/Chrome enabled watches.

Enable the Playwright Chrome fetcher, or alternatively try our very affordable subscription based service.

This is because Selenium/WebDriver can not extract full page screenshots reliably.

{% endif %}
{{ render_button(form.save_button) }} {{ render_button(form.save_and_preview_button) }} Delete Create Copy
{% endblock %}