python 爬取微博展开全文数据 BeautifulSoup

最近,被逼无奈开始自学python爬虫。爬取微博网页版话题下的发布微博内容数据,发现有的微博需要点击展开全文按钮才能获得全文数据,否则只有部分数据。探索了一下发现大多都是selenium+python的代码,在这儿保存一个自己解决的BeautifulSoup下展开全文的方法。

for i in range(0,len(data)):
    if data[i].select("a[action-type='fl_unfold']")!=[]:
        content = data[i].find_all("p",style="display: none")
        if content[0].get_text().replace("\/r\/n", "").strip().endswith('收起全文d'):
            nr_info = content[0].get_text().replace("\/r\/n", "").strip()
            nr = filter_tags(db.escape_string(emoji.demojize(nr_info)))
            print(nr)
    else:
        nr_info=soup.select('div > div.card-feed > div.content > p.txt')  #微博内容
        if len(nr_info)>0:
            nr_info = nr_info[0].get_text().replace("\/r\/n", "").strip()
            nr = filter_tags(db.escape_string(emoji.d

你可能感兴趣的:(python,爬虫,数据挖掘)