bootstrap-year-calendar | A fully customizable year calendar widget , for boostrap | Widget library
kandi X-RAY | bootstrap-year-calendar Summary
kandi X-RAY | bootstrap-year-calendar Summary
A fully customizable year calendar widget, for boostrap !
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of bootstrap-year-calendar
bootstrap-year-calendar Key Features
bootstrap-year-calendar Examples and Code Snippets
Community Discussions
Trending Discussions on bootstrap-year-calendar
QUESTION
I'm making a program to scrap some websites, and I'm finding a problem when scraping one of them. On the others I've found my way using Selenium + BS4 to get the information I need and navigating the pages.
The page is this one: https://www.borm.es/#/home/sumario/21-11-2020
Now, the objective is to get all the paragraphs from the class: ng-binding, and the links of each "VER ANUNCIO" that each one has below them.
Usually I would use soup.find_all() to get all of them and navigate the tree or use Selenium to get all the elements using XPATH/CSS SELECTOR.
The problem I'm facing is that find_all(), or find() is returning nothing, (empty list or None), and Selenium returns None too.
I've tried checking if the elements are inside a frame, which I think they're not. I've tried WebDriver wait to see if the page should stop to load before doing something. Different classes/tags give same result.
Now, when I print the BeautifulSoup object, it returns this instead of the HTML code I see inspecting the page:
...ANSWER
Answered 2020-Nov-21 at 12:57What is going on is that the page content that you are viewing is actually being loaded by JavaScript code that is being executed after the initial page content (which you have printed out and are searching) has loaded and that is why you are not finding the elements you are expecting. There are two ways of dealing with this:
- Use
Selenium
to drive a web browser such as Chrome to load the page and wait for an element that you are looking for to be loaded using a Selenium call. Then you can get fromSelenium
the current page source and initializeBeautifulSoup
with that and proceed as usual. This is the "standard" approach. - Using a browser inspector you can look at the network XHR requests that are being made after the page has loaded. One or more of these will be the cause of fetching additional data for updating the DOM. You can then note what the GET or POST request(s) was, make the request yourself and process the data directly.
For example:
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install bootstrap-year-calendar
From the GitHub repository or the official website.
From the Node package manager, using the following command: npm install bootstrap-year-calendar
From Bower, using the following command: bower install bootstrap-year-calendar
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page