行为怪异的美丽汤字符串方法
我正在尝试在此页面中获取图像 - <一href="http://www.bkstr.com/webapp/wcs/stores/servlet/CourseMaterialsResultsView?catalogId=10001&categoryId=9604&storeId=10161&langId=-1&programId=562&a mp;termId=100020629&divisionDisplayName=斯坦福&departmentDisplayName=MATH&courseDisplayName=51§ionDisplayName=01&demoKey=d&目的=浏览" rel="nofollow">http://www.bkstr.com/webapp/wcs/stores/servlet/CourseMaterialsResultsView?catalogId=10001&categoryId=9604&storeId=10161&langId=-1&programId=56 2&termId=100020629&divisionDisplayName=斯坦福&departmentDisplayName=MATH&courseDisplayName=51§ionDisplayName=01&demoKey=d&目的=浏览
我做了正常的 urllib 打开的事情(如果有人要遵循的话,你需要跟踪 cookie) 并执行此
data = soup.findAll("div",{"class":"efMaterialImage left"))
操作,效果很好。
奇怪的是,当我执行 test = data.string
并打印结果时,控制台显示“无”。
知道为什么吗?
I'm trying to get an image in this page -
http://www.bkstr.com/webapp/wcs/stores/servlet/CourseMaterialsResultsView?catalogId=10001&categoryId=9604&storeId=10161&langId=-1&programId=562&termId=100020629&divisionDisplayName=Stanford&departmentDisplayName=MATH&courseDisplayName=51§ionDisplayName=01&demoKey=d&purpose=browse
I do the normal urllib open stuff (you need to track cookies if anyone's going to follow along)
and do this
data = soup.findAll("div",{"class":"efMaterialImage left"))
which works fine.
Weirdly, when I do test = data.string
, and print the result, console shows 'None'.
Any idea why?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
findAll
返回匹配列表,而不是单个匹配。然而,Python 列表没有“字符串”属性。请尝试使用
data[0]
代替。编辑:
字符串似乎仅在标签有一个子级且它是一个字符串时才起作用。
something
可以,但something
不行。
使用更多选择器或使用
.contents
代替。the
findAll
returns a list of matches, not a single match. A Python list does not have the attribute "string", however.Try
data[0]
instead.Edit:
String only seems to work if the tag has one child and its a string.
<div>something</div>
would work, but<div><p>something</p></div>
wouldn't.Use more selectors or use
.contents
instead.