Apify & CrawleeA&CApify & Crawlee
Powered by
worthy-azureW
Apify & Crawlee•4y ago•
6 replies
worthy-azure

How to handle sequential steps (like a login flow or a wizard) in headless browser?

Context
We need to log in to establish a session, then visit a 'content page' to scrape the data we want.

Goal
We're trying to understand the correct way to set up Crawlee for this scenario. Do we do it serially with
page.goto
page.goto
as is done in the forms example[1]? Should we set up handlers for each page type (
loginHandler
loginHandler
and
contentPageHandler
contentPageHandler
) and just add the pages to the
RequestQueue
RequestQueue
? Or do we do something else entirely?

Questions
- How do we ensure that the login step occurs before the the 'content page' is visited and scraped?
- Is there a suggested method for persisting session data so it can be used in a serverless environment where crawlee and the browser are ephemeral?
- If we visit a URL but our session has expired and we need to log back in, is there a recommended method for ensuring the content page in question remains on the queue?

Thanks in advance -- I looked in the documentation but couldn't find any fully fleshed out authentication examples with session persistence and request order guarantees in the docs.

[1] https://crawlee.dev/docs/examples/forms
Apify & Crawlee banner
Apify & CrawleeJoin
This is the official developer community of Apify and Crawlee.
14,091Members
Resources
Recent Announcements

Similar Threads

Was this page helpful?
Recent Announcements
ellativity

**Update to Store Publishing Terms and Acceptable Use Policy** Due to an influx of fraudulent reviews recently, Apify's Legal team has taken some actions to protect developers, customers, and Apify, by updating the Store Publishing Terms and Acceptable Use Policy. Please pay special attention to the updated terms in section 4 of the Store Publishing Terms here: https://docs.apify.com/legal/store-publishing-terms-and-conditions Additionally, please review the changes to section 2 of the Acceptable Use Policy here: https://docs.apify.com/legal/acceptable-use-policy If you have any questions, please ask them in <#1206131794261315594> so everyone can see the discussion. Thanks!

ellativity · 3w ago

ellativity

Hi @everyone I'm hanging out with the Creator team at Apify in https://discord.com/channels/801163717915574323/1430491198145167371 if you want to discuss Analytics and Insights!

ellativity · 4w ago

ellativity

2 things for <@&1092713625141137429> members today: 1. The Apify developer rewards program is open for registrations: https://apify.notion.site/developer-rewards This is the program where you will earn points for marketing activities. The rewards are still TBC, but the real purpose of the program is to help you structure your marketing activities and efforts. In the coming weeks, I will be populating that link with guides to help you identify the best ways to market your Actors, as well as scheduling workshops and office hours to help you create content and develop your own marketing strategy. 2. At 2PM CET (in about 80 minutes) there will be an office hour with the team behind Insights and Analytics, who want your feedback on how to improve analytics for you. Join us in https://discord.com/channels/801163717915574323/1430491198145167371 to share your ideas!

ellativity · 4w ago

Similar Threads

Handle browser failure
NeoNomadeNNeoNomade / crawlee-js
3y ago
how to wait browser to close like playwright await browser.close();
rubber-blueRrubber-blue / crawlee-js
3y ago
browserType.launchPersistentContext: Browser closed
sad-indigoSsad-indigo / crawlee-js
3y ago
How to handle a huge Json file?
hurt-tomatoHhurt-tomato / crawlee-js
4y ago