Comments (4)
The error message indicates that the browser did not complete the command within the timeout required by chromedriver (as I understand it). I've seen that message in various contexts before. I don't think it is related to thirtyfour
since you can see the same message when working with other selenium libraries.
It may well be a result of setting the page load timeout too low. The selenium default for the page load timeout is actually 300 seconds! https://www.w3.org/TR/webdriver1/#dfn-session-page-load-timeout
The thirtyfour
crate sets this timeout to 60 seconds by default. Also have a look at the page loading strategies used by selenium. That page has some detailed information on how that timeout is used: https://www.w3.org/TR/webdriver1/#dfn-table-of-page-load-strategies
I don't think this page load timeout setting is intended for testing how quickly your page loads. I would recommend keeping that timeout at 60 seconds or higher, and measuring the page load time yourself. You may need to experiment with changing the load strategy setting and then come up with your own metric for determining when the page has "finished".
from thirtyfour.
Also check that you are using the correct chromedriver version to match your version of chrome. Sometimes a version mismatch can result in that error too
from thirtyfour.
I think this message is coming direct from the webdriver (is this chromedriver?). Is there a reason why you want to set this timeout so low?
from thirtyfour.
Yes chromedriver.
WebDriverTimeout(WebDriverErrorInfo { status: 500, error: "", value: WebDriverErrorValue { message: "timeout: Timed out receiving message from renderer: -0.019\n (Session info: headless chrome=87.0.4280.88)", error: Some("timeout"), stacktrace: Some("#0 0x55ea7a29aea9 base::debug::CollectStackTrace()\n#1 0x55ea7a24d9c6 base::debug::StackTrace::StackTrace()\n#2 0x55ea79d1b70f Status::Status()\n#3 0x55ea79d0c15c DevToolsClientImpl::ProcessNextMessage()\n#4 0x55ea79d0ce3e DevToolsClientImpl::SendCommandInternal()\n#5 0x55ea79d0d351 DevToolsClientImpl::SendCommandAndGetResultWithTimeout()\n#6 0x55ea79d181b3 NavigationTracker::IsPendingNavigation()\n#7 0x55ea79d20248 WebViewImpl::IsNotPendingNavigation()\n#8 0x55ea79d1c6cb base::internal::Invoker<>::Run()\n#9 0x55ea79d0c3d3 DevToolsClientImpl::HandleEventsUntil()\n#10 0x55ea79d26610 WebViewImpl::WaitForPendingNavigations()\n#11 0x55ea79ca4e76 ExecuteWindowCommand()\n#12 0x55ea79c78877 base::internal::Invoker<>::Run()\n#13 0x55ea79c5d657 (anonymous namespace)::ExecuteSessionCommandOnSessionThread()\n#14 0x55ea79c5b254 base::internal::Invoker<>::RunOnce()\n#15 0x55ea7a272ec2 base::TaskAnnotator::RunTask()\n#16 0x55ea7a283345 base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl()\n#17 0x55ea7a28375c base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWork()\n#18 0x55ea7a2c2e56 base::MessagePumpDefault::Run()\n#19 0x55ea7a282ca0 base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run()\n#20 0x55ea7a2687e6 base::RunLoop::Run()\n#21 0x55ea7a28dc4b base::Thread::ThreadMain()\n#22 0x55ea7a2a89d6 base::(anonymous namespace)::ThreadFunc()\n#23 0x7fed79ace14a start_thread\n#24 0x7fed7702df23 __GI___clone\n"), data: None } })
I am experimenting. Is 5-10 seconds too low for ordinary website?
Looks like Google Pagespeed Insights wants 1-2 seconds for good results.
from thirtyfour.
Related Issues (20)
- so, how to get the text value of an element HOT 1
- Error while clicking element. HOT 4
- `#shadow-root` doesn't work on Firefox with geckodriver HOT 1
- Connection refused when using containers HOT 4
- How to use selenium-manager in my code? HOT 2
- thread 'tokio-runtime-worker' panicked at 'internal error: entered unreachable code: received unknown error (no such frame) for NOT_FOUND status code' HOT 4
- How can I set the user-agent for Chromedriver? HOT 3
- Is there a way to use wait_until or something like it to way for a specific ID to be available ? HOT 2
- wait until element to disappear HOT 6
- Chrome Options example erroring HOT 2
- Does `query` work on child elements? HOT 3
- Cannot interact with WebElement HOT 1
- How to trigger onchange event without submitting the form? HOT 2
- How to set PageLoadStrategy::None in DesiredCapabilities::chrome()? HOT 1
- Running the Test without Existing Browser (HtmlUnitDriver) HOT 1
- Add cdp type from auto_generate_cdp crate HOT 2
- How to handle file picker? HOT 4
- How to capture the Chromium's requests and responses traffic using thirtyfour HOT 5
- Maintenance Status
- Device Farm incompatibility - with workaround
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from thirtyfour.