lxml支持代理吗?
我在公司网络的代理后面,想使用 lxml
这个库。但是我找不到关于 lxml
支持代理的任何资料(就像 urllib2
有的那样)。请问 lxml
能通过代理访问网络吗?有没有什么解决办法?
1 个回答
1
所以你需要通过代理下载一些xml文件,然后用lxml来解析它,对吧?
首先,使用Python的requests库来下载xml页面。这个库支持代理:
import requests
proxies = {
"http": "http://10.10.1.10:3128",
"https": "http://10.10.1.10:1080",
}
requests.get("http://example.org", proxies=proxies)
关于它的设置更多信息可以查看这里: http://docs.python-requests.org/en/latest/user/advanced/#proxies
然后用lxml来解析这个xml文件。或者你也可以使用BeautifulSoup4,这个可能更适合你的需求。如果你安装了lxml,它会用lxml作为解析引擎。使用示例:
from bs4 import BeautifulSoup
html = "<body></body>"
x = BeautifulSoup(html, "xml") # Note the xml as second argument.