我对编码很陌生,所以请原谅我,如果我的问题看起来很基本,或者我没有正确发布。我正在练习从网站中提取名称,我想将它们放入列表,然后是.csv文件。我的代码将打印所有名称,但当我尝试做任何其他事情时,它似乎只看到姓氏。我尝试了所有我知道的,所以希望你们能帮忙。
import urllib
import urllib.request
import requests
from bs4 import BeautifulSoup
import civ
theurl = "http://business.cardiff.ac.uk/research/accounting-and-finance/faculty"
r = requests.get(theurl)
soup = BeautifulSoup(r.text, "lxml")
print(soup.title.text)
for txt in soup.find_all("h1", {"class": "profile-title"}):
name = txt.text
print(name)
在此之后,我尝试了各种方法将名称转换为列表,但只看到姓氏。
答案 0 :(得分:0)
我认为你的问题出现在for循环中,你继续覆盖name
对象。试试这个:
name = []
for txt in soup.find_all("h1",{"class":"profile-title"}):
name.append(txt.text)
这将创建一个空列表,然后连续附加profile-title
元素中的每个名称。