Even though a crawler such as WebCopy may not support JavaScript, it may be possible to pre-process attributes containing JavaScript and transform them.
The example buttons below use a JavaScript function to navigate to a
different page by calling function
openPage
with two arguments. These arguments are then
concatenated to create a destination URL which the
browser is then instructed to navigate to. You can configure WebCopy can
detect these patterns and generate the
concatenated value, allowing it to crawl these pages, including correctly
remapping the original source links to jump
directly to the destination page.
Another example is a "middleman redirect", where clicking the button will first visit an interim page. WebCopy can transform this to remove the interim visit.
Category 1 Index Category 1 Page 2 Category 2 Index Middleman Redirect