【发布时间】:2016-09-05 21:30:48
【问题描述】:
我正在尝试在最终结果下的 ul 表中刮取 li 中的公司。源代码是这样的
import string
import re
import urllib2
import datetime
import bs4
from bs4 import BeautifulSoup
class AJSpider(object):
def __init__(self):
print ("initisizing")
self.date = str(datetime.date.today())
self.cur_url = "https://youinvest.moneyam.com/modules/forward-diary/?date={date}&period=month"
self.datas = []
print ("initisization done")
def get_page(self,cur_date):
url = self.cur_url
try:
my_page = urllib2.urlopen(url.format(date = cur_date)).read().decode("utf-8")
my_soup = BeautifulSoup(my_page, "html.parser")
except:
print ('Failed')
return my_soup
def get_final(self, soup_page):
temp_data = []
final_result_section = soup_page.find("h3", text="Final Result")
print final_result_section
def start_spider(self):
my_page = self.get_page(self.date)
self.get_final(my_page)
def main():
my_spider = AJSpider()
my_spider.start_spider()
if __name__ == '__main__':
main()
我在 stackoverflow 中发现了一个类似的问题 Beautiful Soup: Accessing <li> elements from <ul> with no id ,但是这里的这个确实有一个类 id,这让事情变得容易多了。
在我的场景中,请问如何从 ul 表中提取 li 元素?这里唯一的标识符实际上是h3标签的内容,即最终结果,但它不是id所以我不知道如何使用它。
【问题讨论】:
标签: python html beautifulsoup html-parsing html-lists