金庸小說最強人物,python爬取金庸小說人物

 2023-10-05 阅读 27 评论 0

摘要:python 爬蟲 python爬取金庸小說人物 ‘’’ 通過http://www.jinyongwang.com/data/renwu/來獲取金庸小說中的人物 輸出結果為 小說1 人物1 人物2 人物3 … 小說2 人物1 人物2 人物3 … … 話不多說直接上碼 ‘’’ import requests from bs4 import BeautifulSoup import re#

python 爬蟲

python爬取金庸小說人物

‘’’
通過http://www.jinyongwang.com/data/renwu/來獲取金庸小說中的人物
輸出結果為
小說1
人物1 人物2 人物3 …
小說2
人物1 人物2 人物3 …

話不多說直接上碼
‘’’

import requests
from bs4 import BeautifulSoup
import re#獲取網頁內容
def get_html(url):page = requests.get(url)#print(page.content)return page.content#獲取小說及人物并寫入txt中
def analyse_html(html):#第一次使用BeautifulSoup,感覺perfectsoup = BeautifulSoup(html,'html.parser')body = soup.body#print(body)main = body.find('div',attrs = {'class':'main'})booklist = main.find('div',attrs = {'class':'booklist'})#寫入指定txtfile_path = r'E:\names.txt'file = open(file_path,'a',encoding='utf-8')#可以通過使用正則的方式,找到含有小說名的  'h2' 標簽,和含有人物名的 'div' 標簽for dataname in booklist.find_all(re.compile('h2|div')):# print(dataname)# print(dataname['class'])# print(type(dataname['class']))#可以直接通過  tag['class']  的方式直接獲取 tag 值if dataname['class'][0] == 'dataname':dataname = dataname.find('span')book_name = dataname.get_text()print(book_name+'\n')file.write('\n'+book_name+'\n')elif dataname['class'][0] == 'datapice' :for a in dataname('a'):#含有人物圖片的和不含有的獲取方式有少許差異#   <a href="/data/2752.html"><img alt="鄭旦" src="/public/uploads/baike/2015-08-15/95771439622810_120.jpg"/>鄭旦</a>    這種含有人物圖片的直接通過 get_text()  即可獲取if a.find('i') == None:role_name = a.get_text().replace(' ', '')#print(role_name)else:#    <a href="/data/2767.html"><i class="icon"></i>卓天雄</a>   #這種不含有人物圖片的直接通過  get_text() 獲取,會多獲取到一個 ‘’,暫無其他好辦法去掉,只能通過字符串切割的方式去掉role_name = a.get_text(strip=True).replace(' ','')[1:]file.write(role_name+' ')file.close()
if __name__ == '__main__':url = 'http://www.jinyongwang.com/data/renwu/'html = get_html(url)analyse_html(html)

第一次在CSDN上寫些東東,感覺還不錯~~

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://808629.com/121243.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 86后生记录生活 Inc. 保留所有权利。

底部版权信息