2015-10-22 33 views
0
from bs4 import BeautifulSoup #imports beautifulSoup package 
import urllib2 

url2 = 'http://www.waldenu.edu/doctoral/phd-in-management/faculty' 
page2 = urllib2.urlopen(url2) 
soup2 = BeautifulSoup(page2.read(), "lxml") 

row2 = soup2.findAll('p') 
row2 = row2[18:-4] 

names2 = [] 
for x in row2: 
    currentString2 = x.findAll('strong') 
    if len(currentString2) > 0: 
     currentString2 = currentString2[0] 
     names2.append(currentString2.text) 

這產生一個姓名列表,名字和姓氏。我試圖區分名字和姓氏,並將所有名字放入一個列表中,並將姓氏放入他們自己的單獨列表中。 (順便刪除逗號和空格)。這樣做的最好方法是什麼?如何分離/解析字符串並將它們放入自己的列表中? (Python Web解析)

+0

做的所有名字都有特定的格式嗎? –

+0

那麼它是這樣的>「[u'Constantine O.阿爾弗雷德 - Ockiya ' u'Robert T. Aubey', u'Alen巴達爾 ' u'David K.旗幟', u'Joseph E.巴博', u'Teresa Bittner', u'David D. Bouvin', u'James Bowman', u'William H. Brent'...] – Soccerplayerpro

回答

0

你會想要使用.split()字符串的方法。

E.g.

>>> 'Lilburn P. Hoehn'.split() 
['Lilburn', 'P.', 'Hoehn'] 
>>> 'Jean Gordon'.split() 
['Jean', 'Gordon'] 

然後有一些邏輯圍繞是否列表是2或3個元素長。