栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何使用urllib2从Python中打开的URL中提取特定数据?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何使用urllib2从Python中打开的URL中提取特定数据?

正如另一位海报提到的那样,BeautifulSoup是完成这项工作的绝佳工具。

这是整个,经过夸奖的程序。它可能会使用很多容错功能,但是只要您输入有效的用户名,它就会从相应的网页中提取所有分数。

我尽力发表评论。如果您不熟悉BeautifulSoup,我强烈建议您在使用BeautifulSoup文档的示例中进行操作。

整个程序…

from urllib2 import urlopenfrom BeautifulSoup import BeautifulSoupimport sysURL = "http://hiscore.runescape.com/hiscorepersonal.ws?user1=" + sys.argv[1]# Grab page html, create BeatifulSoup objecthtml = urlopen(URL).read()soup = BeautifulSoup(html)# Grab the <table id="mini_player"> elementscores = soup.find('table', {'id':'mini_player'})# Get a list of all the <tr>s in the table, skip the header rowrows = scores.findAll('tr')[1:]# Helper function to return concatenation of all character data in an elementdef parse_string(el):   text = ''.join(el.findAll(text=True))   return text.strip()for row in rows:   # Get all the text from the <td>s   data = map(parse_string, row.findAll('td'))   # Skip the first td, which is an image   data = data[1:]   # Do something with the data...   print data

这是一个测试运行。

> test.py bigdrizzle13[u'Overall', u'87,417', u'1,784', u'78,772,017'][u'Attack', u'140,903', u'88', u'4,509,031'][u'Defence', u'123,057', u'85', u'3,449,751'][u'Strength', u'325,883', u'84', u'3,057,628'][u'Hitpoints', u'245,982', u'85', u'3,571,420'][u'Ranged', u'583,645', u'71', u'856,428'][u'Prayer', u'227,853', u'62', u'357,847'][u'Magic', u'368,201', u'75', u'1,264,042'][u'Cooking', u'34,754', u'99', u'13,192,745'][u'Woodcutting', u'50,080', u'93', u'7,751,265'][u'Fletching', u'53,269', u'99', u'13,051,939'][u'Fishing', u'5,195', u'99', u'14,512,569'][u'Firemaking', u'46,398', u'88', u'4,677,933'][u'Crafting', u'328,268', u'62', u'343,143'][u'Smithing', u'39,898', u'77', u'1,561,493'][u'Mining', u'31,584', u'85', u'3,331,051'][u'Herblore', u'247,149', u'52', u'135,215'][u'Agility', u'225,869', u'60', u'276,753'][u'Thieving', u'292,638', u'56', u'193,037'][u'Slayer', u'113,245', u'73', u'998,607'][u'Farming', u'204,608', u'51', u'115,507'][u'Runecraft', u'38,369', u'71', u'880,789'][u'Hunter', u'384,920', u'53', u'139,030'][u'Construction', u'232,379', u'52', u'125,708'][u'Summoning', u'87,236', u'64', u'419,086']

瞧:)



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/623754.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号