Я пытаюсь поэкспериментировать с библиотекой python и столкнулся с проблемой. Я следую небольшому руководству по Разработка приложений Python с использованием Scrapy и использую этот код
import scrapy
class QuotesSpider(scrapy.Spider):
name = "quotes"
start_urls = [
'http://quotes.toscrape.com/tag/humor/',
]
def parse(self, response):
for quote in response.css('div.quote'):
yield {
'text': quote.css('span.text::text').extract_first(),
'author': quote.xpath('span/small/text()').extract_first(),
}
next_page = response.css('li.next a::attr("href")').extract_first()
if next_page is not None:
yield response.follow(next_page, self.parse)
Я запускаю его с помощью команды scrapy runspider quotes_spider.py -o quotes.json
, и мне выдается этот вывод
Traceback (most recent call last):
File "c:\python27\lib\runpy.py", line 174, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "c:\python27\lib\runpy.py", line 72, in _run_code
exec code in run_globals
File "C:\Python27\Scripts\scrapy.exe\__main__.py", line 5, in <module>
File "c:\python27\lib\site-packages\scrapy\__init__.py", line 34, in <module>
from scrapy.spiders import Spider
File "c:\python27\lib\site-packages\scrapy\spiders\__init__.py", line 10, in <module>
from scrapy.http import Request
File "c:\python27\lib\site-packages\scrapy\http\__init__.py", line 11, in <module>
from scrapy.http.request.form import FormRequest
File "c:\python27\lib\site-packages\scrapy\http\request\form.py", line 11, in <module>
import lxml.html
File "c:\python27\lib\site-packages\lxml\html\__init__.py", line 54, in <module>
from .. import etree
ImportError: DLL load failed: %1 is not a valid Win32 application.
Почему я получаю эти ошибки?
Я использую 64-битную версию Python 2.7, и я думаю, что scrapy также 64-битная, но я не совсем уверен. Любая помощь с этим будет оценена!
Редактировать: Удаление библиотек lxml и их переустановка - вот мое исправление для этой конкретной проблемы