gpt4 book ai didi

python - 这个函数在 Python 中涉及 urllib2 和 BeautifulSoup 做什么?

转载 作者:行者123 更新时间:2023-12-01 00:00:45 25 4
gpt4 key购买 nike

所以我之前问了一个关于从 html 页面检索高分的问题,另一个用户给了我以下代码来帮助我。我对 python 和 beautifulsoup 很陌生,所以我正在尝试逐段浏览其他一些代码。我明白了大部分内容,但我不明白这段代码是什么以及它的功能是什么:

    def parse_string(el):
text = ''.join(el.findAll(text=True))
return text.strip()

完整代码如下:

from urllib2 import urlopen
from BeautifulSoup import BeautifulSoup
import sys

URL = "http://hiscore.runescape.com/hiscorepersonal.ws?user1=" + sys.argv[1]

# Grab page html, create BeatifulSoup object
html = urlopen(URL).read()
soup = BeautifulSoup(html)

# Grab the <table id="mini_player"> element
scores = soup.find('table', {'id':'mini_player'})

# Get a list of all the <tr>s in the table, skip the header row
rows = scores.findAll('tr')[1:]

# Helper function to return concatenation of all character data in an element
def 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

最佳答案

el.findAll(text=True)返回元素及其子元素中包含的所有文本。我所说的文本是指标签之外的所有内容;所以在 <b>hello</b>那么“hello”将是文本,但是 <b></b>不会。

因此,该函数将给定元素下方找到的所有文本连接在一起,并去除前后的空格。

这里是 findAll 的链接文档:http://www.crummy.com/software/BeautifulSoup/documentation.html#arg-text

关于python - 这个函数在 Python 中涉及 urllib2 和 BeautifulSoup 做什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/991967/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com