Sitat av
snippsat
Kan lage et eksempel og parse et par verdier.
Kode
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.keys import Keys
from bs4 import BeautifulSoup
import time
#--| Setup
options = Options()
options.add_argument("--headless")
options.add_argument('--disable-gpu')
options.add_argument('--log-level=3')
browser = webdriver.Chrome(executable_path=r'C:\cmder\bin\chromedriver.exe', options=options)
#--| Parse or automation
browser.get('https://www.morningstar.com/stocks/XOSL/XXL/quote.html')
time.sleep(3)
soup = BeautifulSoup(browser.page_source, 'lxml')
bid_size = soup.select('div.dp-value.price-down.ng-binding.ng-scope')
price_sales = soup.select('li:nth-child(9) > div > div.dp-value.ng-binding')
print(bid_size[0].text.strip())
print(price_sales[0].text.strip())
Hei! Takk for koden, men når linja for å finne Price/Sales kjøres, så får jeg følgende feilmelding:
Kode
Traceback (most recent call last):
File "C:/Python34/Scripts/Fundemental lxml.py", line 20, in <module>
price_sales = soup.select('li:nth-child(9) > div > div.dp-value.ng-binding')
File "C:\Python34\lib\site-packages\bs4\element.py", line 1451, in select
'Only the following pseudo-classes are implemented: nth-of-type.')
NotImplementedError: Only the following pseudo-classes are implemented: nth-of-type.
. Og etter å ha søkt litt rundt står det at beautifulsoup ikke støtter den formen for select på den type verdi og at jeg må bruke f.eks. find.. Hmm, vet du noe om det?
Har også forsøkt den andre metoden med api, men jeg får http access code 401, og har ikke helt funnet noen måte å få autorisert. Jeg tror det i utgangspunktet er en betalingstjeneste.