Как использовать селен и скрап? - PullRequest
0 голосов
/ 11 июня 2019

Я хотел бы очистить заголовок и дату, но Bloomberg продолжает запрещать мне, поэтому я использовал браузер без головы, чтобы очистить нужный мне элемент

Это мой код с использованием селена и скрапа

import scrapy
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC


class BloomergSpider(scrapy.Spider):    
name = 'bloomerg'
allowed_domains = ['www.bloomberg.com']
start_urls = ['https://www.bloomberg.com/news/articles/2019-05- 
    30/tesla-dealt-another-blow-as-barclays-sees-it-as-niche-carmaker']

def parse(self, response):
    driver = webdriver.Firefox()
    driver.get('https://www.bloomberg.com/news/articles/2019-05- 
   30/tesla-dealt-another-blow-as-barclays-sees-it-as-niche-carmaker')
    title = WebDriverWait(driver,10).until(EC.visibility_of_element_located((By.XPATH, 
  "//div[text()='markets']//following:: 
 h1[1]"))).get_attribute("innerHTML")
    date = WebDriverWait(driver, 
 10).until(EC.visibility_of_element_located((By.XPATH, 
 "//div[text()='markets']//following:: h1[1]//following::div[@class='lede- 
text- 
v2__times']/time[@itemprop='datePublished']"))).get_attribute("innerHTML")
    driver.quit() 

    print(title)
    print(date)

У меня такая ошибка

selenium.common.exceptions.SessionNotCreatedException: Message: Unable to find a matching set of capabilities

Пожалуйста, пожалуйста, помогите мне спасибо

1 Ответ

0 голосов
/ 11 июня 2019

Вам нужно добавить своего geckodriver в системную среду PATH, вот что и вызывает вашу ошибку.

Если у вас его нет (вы должны его получить), вы можете получить последнюю версию здесь https://github.com/mozilla/geckodriver/releases

Если вы работаете в Windows, поищите «Редактировать переменные системной среды».и добавьте путь к файлу geckodriver в переменную окружения PATH

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...