我正在尝试将pyquery与pypy一起使用,但这取决于lxml2,后者不会在pypy下构建。我知道有一个用于pypy的lxml2构建,但是我不知道如何使pyquery使用它而不是通常的。

最佳答案

只需使用lxmlFrom pyquery package docs

>>> from pyquery import PyQuery as pq
>>> from lxml import etree
>>> import urllib
>>> d = pq("<html></html>")
>>> d = pq(etree.fromstring("<html></html>"))
>>> d = pq(url=your_url)
>>> d = pq(url=your_url,
...        opener=lambda url, **kw: urlopen(url).read())
>>> d = pq(filename=path_to_html_file)


更新:

您需要使用lxml的PyPy友好版本。幸运的是,它已经存在并被命名为lxml-cffi。要在pyquery构建中使用它,首先您应该创建项目的自己的fork:https://github.com/gawel/pyquery

然后,编辑setup.py将以下参数添加到setup(...)调用中:

    dependency_links=[
        'git+https://github.com/amauryfa/lxml@cffi'
    ]


最后,安装您的软件包:

pip install git+https://github.com/YOUR_GITHUB_HANDLE/pyquery.git

工作正常后,强烈建议您推动叉子,并尝试与负责人this website进行交流,以便在pyquery条目中包含指向叉子的注释。

10-07 15:27