我对BeautifulSoup已经不熟悉了,但是我运行了这个代码-不是为了给你一个完整的答案,而是为了给你指出正确的方向import urllib
from lxml import html
mypage = urllib.urlopen('http://gatherer.wizards.com/Pages/Card/Details.aspx?multiverseid=264')
dir(mypage)
['__doc__', '__init__', '__iter__', '__module__', '__repr__', 'close', 'code', 'fileno', 'fp', 'getcode', 'geturl', 'headers', 'info', 'next', 'read', 'readline', 'readlines', 'url']
page = mypage.readlines()
len(page)
526
page[0]
'<?xml version="1.0" encoding="utf-8" ?>\r\n'
string = ''.join([apage for apage in page])
tree = html.fromstring(string)
elements = [e for e in tree.iter()]
for e in elements:
if 'cardtextbox' in e.values():
e, e.text_content()
(, 'Enchant creature')
(, "Enchanted creature has protection from red. This effect doesn't remove Red Ward.")
我显然不知道我在做什么,但我是在戳它。在
在我看来,您尝试识别的值是属性字典的值,因此我知道足够多的值来计算这些值。如果你想列出你想要识别的所有属性,那就需要花更多的时间去做,但我认为这应该能让你开始。在