Найти - Пользователи
Полная версия: Запускаю пример, выдает ошибку "[WinError 267] Неверно задано имя папки:"
Начало » Python для новичков » Запускаю пример, выдает ошибку "[WinError 267] Неверно задано имя папки:"
1
DenAon
Решил посмотреть что такое Python 3 и Selenium Webdriver. Скачал установил, Привет мир написал. Дальше взял такой пример
import unittest
from selenium import webdriver
from selenium.webdriver.common.keys import Keys

class PythonOrgSearch(unittest.TestCase):

def setUp(self):
self.driver = webdriver.Firefox()

def test_search_in_python_org(self):
driver = self.driver
driver.get("http://www.python.org")
self.assertIn("Python", driver.title)
elem = driver.find_element_by_name("q")
elem.send_keys("pycon")
assert "No results found." not in driver.page_source
elem.send_keys(Keys.RETURN)

def tearDown(self):
self.driver.close()

if __name__ == "__main__":
unittest.main()
Получаю результат
=========== RESTART: DMyWork/_Python/Test0/python_org_search.py ===========
E
======================================================================
ERROR: test_search_in_python_org (__main__.PythonOrgSearch)
———————————————————————-
Traceback (most recent call last):
File “D:\MyWork\_Python\Python36\lib\site-packages\selenium\webdriver\common\service.py”, line 74, in start
stdout=self.log_file, stderr=self.log_file)
File “D:\MyWork\_Python\Python36\lib\subprocess.py”, line 709, in __init__
restore_signals, start_new_session)
File “D:\MyWork\_Python\Python36\lib\subprocess.py”, line 997, in _execute_child
startupinfo)
FileNotFoundError: Не удается найти указанный файл

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “DMyWork/_Python/Test0/python_org_search.py”, line 8, in setUp
self.driver = webdriver.Firefox()
File “D:\MyWork\_Python\Python36\lib\site-packages\selenium\webdriver\firefox\webdriver.py”, line 144, in __init__
self.service.start()
File “D:\MyWork\_Python\Python36\lib\site-packages\selenium\webdriver\common\service.py”, line 81, in start
os.path.basename(self.path), self.start_error_message)
selenium.common.exceptions.WebDriverException: Message: ‘geckodriver’ executable needs to be in PATH.


———————————————————————-
Ran 1 test in 0.014s

FAILED (errors=1)
>>>
Изменил
 
driver = webdriver.Firefox("D:\Program Files (x86)\Mozilla Firefox\firefox.exe")
Получил
OSError: Синтаксическая ошибка в имени файла, имени папки или метке тома: ‘D:\\Program Files (x86)\\Mozilla Firefox\x0cirefox.exe’
Изменил
 
driver = webdriver.Firefox(r"D:\Program Files (x86)\Mozilla Firefox\firefox.exe")
Получил
E
======================================================================
ERROR: test_search_in_python_org (__main__.PythonOrgSearch)
———————————————————————-
Traceback (most recent call last):
File “DMyWork/_Python/Test0/python_org_search.py”, line 8, in setUp
self.driver = webdriver.Firefox(r“D:\Program Files (x86)\Mozilla Firefox\firefox.exe”)
File “D:\MyWork\_Python\Python36\lib\site-packages\selenium\webdriver\firefox\webdriver.py”, line 134, in __init__
firefox_profile = FirefoxProfile(firefox_profile)
File “D:\MyWork\_Python\Python36\lib\site-packages\selenium\webdriver\firefox\firefox_profile.py”, line 78, in __init__
ignore=shutil.ignore_patterns(“parent.lock”, “lock”, “.parentlock”))
File “D:\MyWork\_Python\Python36\lib\shutil.py”, line 309, in copytree
names = os.listdir(src)
NotADirectoryError: Неверно задано имя папки: ‘D:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe’

———————————————————————-
Ran 1 test in 0.015s

FAILED (errors=1)
>>>
Больше ничего нагуглить не могу Подскажите новичку в чем беда.
FishHook
DenAon
Больше ничего нагуглить не могу Подскажите новичку в чем беда.
os.path.join
DenAon
Решилось вот так
self.driver = webdriver.Firefox(executable_path=r'D:\Program Files (x86)\Mozilla Firefox\geckodriver.exe')
Но мне кажется что это не совсем прямое решение…
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB