尝试从serpscrap软件包中运行示例.py时出现错误。
我在使用Pythonista的iPhoneX。
任何帮助将不胜感激。
这是回溯
Traceback (most recent call last):
File "/private/var/mobile/Containers/Shared/AppGroup/C27C5B11-1804-47B9-AF18-7287A8337C55/Pythonista3/Documents/testing/serpscrapetest.py", line 3, in <module>
import serpscrap
File "/private/var/mobile/Containers/Shared/AppGroup/C27C5B11-1804-47B9-AF18-7287A8337C55/Pythonista3/Documents/site-packages-3/serpscrap/__init__.py", line 5, in <module>
from serpscrap.serpscrap import SerpScrap
File "/private/var/mobile/Containers/Shared/AppGroup/C27C5B11-1804-47B9-AF18-7287A8337C55/Pythonista3/Documents/site-packages-3/serpscrap/serpscrap.py", line 11, in <module>
from scrapcore.core import Core
File "/private/var/mobile/Containers/Shared/AppGroup/C27C5B11-1804-47B9-AF18-7287A8337C55/Pythonista3/Documents/site-packages-3/scrapcore/core.py", line 8, in <module>
from scrapcore.cachemanager import CacheManager
File "/private/var/mobile/Containers/Shared/AppGroup/C27C5B11-1804-47B9-AF18-7287A8337C55/Pythonista3/Documents/site-packages-3/scrapcore/cachemanager.py", line 11, in <module>
from scrapcore.parsing import Parsing
File "/private/var/mobile/Containers/Shared/AppGroup/C27C5B11-1804-47B9-AF18-7287A8337C55/Pythonista3/Documents/site-packages-3/scrapcore/parsing.py", line 6, in <module>
from scrapcore.parser.google_parser import GoogleParser
File "/private/var/mobile/Containers/Shared/AppGroup/C27C5B11-1804-47B9-AF18-7287A8337C55/Pythonista3/Documents/site-packages-3/scrapcore/parser/google_parser.py", line 7, in <module>
from scrapcore.parser.parser import Parser
File "/private/var/mobile/Containers/Shared/AppGroup/C27C5B11-1804-47B9-AF18-7287A8337C55/Pythonista3/Documents/site-packages-3/scrapcore/parser/parser.py", line 7, in <module>
import lxml.html
File "/private/var/mobile/Containers/Shared/AppGroup/C27C5B11-1804-47B9-AF18-7287A8337C55/Pythonista3/Documents/site-packages-3/lxml/html/__init__.py", line 54, in <module>
from .. import etree
ImportError: cannot import name 'etree'
答案 0 :(得分:2)
由于lxml依赖性,SerpScrap目前在iOS上不起作用。 我将更新文档以澄清这一点。
但也许您看看https://github.com/pybee/Python-Apple-support。 我对iOS不熟悉,也许有人可以检查这是否有助于解决此问题。否则,请随时在serpscrap github页面上打开一个问题。
答案 1 :(得分:0)
serpscrap
显然需要lxml
,尽管出于某些原因it only documents that requirement for Windows,而非所有平台。
您无法在Pythonista中安装需要C扩展模块的软件包,例如lxml
。您似乎已经安装了lxml
的纯Python部分, 1 ,但是如果没有C扩展模块,那将毫无用处。
有一个未解决的问题,#245是将lxml
添加为Pythonista的预装软件包,这可能会解决您的问题。
因此,您的选择是:
lxml
,以便他们关闭该错误并将lxml
添加到下一个版本。serpscrap
以使其不使用lxml
(如果仅使用lxml.etree
,则有可能与stdlib ETree实现一起使用)。serpscrap
,希望其他人也能做到。lxml
的其他抓取工具。 1。我不知道怎么会这样。安装应该会失败。但是也许serpscrap
可以在Linux和macOS上运行但在iOS上却不能正常运行,这就是为什么它们只将lxml
列为Windows依赖项的原因? >