我需要获取一个列表,以便可以将输出分为3列。
因此,要将其转换为列表,我只需.text
即可。但这给了我一个错误。
import requests
from bs4 import BeautifulSoup as bs
lis=[]
headers = {'X-Requested-With': 'XMLHttpRequest'}
r = requests.get('https://www.governmentjobs.com/careers/home/index?agency=sdcounty&sort=PositionTitle&isDescendingSort=false&_=',headers=headers)
soup = bs(r.content,'lxml')
containers = soup.findAll('li',attrs = {'class':'list-item'}) # gives container with all we need
smt = soup.findAll('ul',attrs={'class':'list-meta'})
for s in smt:
for li in s.findAll('li')[1]:
print(li.text)
错误:
self.__class__.__name__,attr))
AttributeError: 'NavigableString' object has no attribute 'text'
如果我只是print(li)
:
究竟是什么导致此错误? Span
标签?
我只需要3列:
Column1: Regular - Full time
Column2: $63,606.40 - $70,137.60
Column3: Regular - Full time