麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Python > 正文

Python爬取成語接龍類網站

2020-02-15 23:17:56
字體:
來源:轉載
供稿:網友

介紹

本文將展示如何利用Python爬蟲來實現詩歌接龍。

該項目的思路如下:

利用爬蟲爬取詩歌,制作詩歌語料庫;

將詩歌分句,形成字典:鍵(key)為該句首字的拼音,值(value)為該拼音對應的詩句,并將字典保存為pickle文件;
讀取pickle文件,編寫程序,以exe文件形式運行該程序。

該項目實現的詩歌接龍,規則為下一句的首字與上一句的尾字的拼音(包括聲調)一致。下面將分步講述該項目的實現過程。

詩歌語料庫

首先,我們利用Python爬蟲來爬取詩歌,制作語料庫。爬取的網址為:https://www.gushiwen.org,頁面如下:

由于本文主要為試了展示該項目的思路,因此,只爬取了該頁面中的唐詩三百首、古詩三百、宋詞三百、宋詞精選,一共大約1100多首詩歌。為了加速爬蟲,采用并發實現爬蟲,并保存到poem.txt文件。完整的Python程序如下:

import reimport requestsfrom bs4 import BeautifulSoupfrom concurrent.futures import ThreadPoolExecutor, wait, ALL_COMPLETED# 爬取的詩歌網址urls = ['https://so.gushiwen.org/gushi/tangshi.aspx',  'https://so.gushiwen.org/gushi/sanbai.aspx',  'https://so.gushiwen.org/gushi/songsan.aspx',  'https://so.gushiwen.org/gushi/songci.aspx'  ]poem_links = []# 詩歌的網址for url in urls: # 請求頭部 headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36'} req = requests.get(url, headers=headers) soup = BeautifulSoup(req.text, "lxml") content = soup.find_all('div', class_="sons")[0] links = content.find_all('a') for link in links:  poem_links.append('https://so.gushiwen.org'+link['href'])poem_list = []# 爬取詩歌頁面def get_poem(url): #url = 'https://so.gushiwen.org/shiwenv_45c396367f59.aspx' # 請求頭部 headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36'} req = requests.get(url, headers=headers) soup = BeautifulSoup(req.text, "lxml") poem = soup.find('div', class_='contson').text.strip() poem = poem.replace(' ', '') poem = re.sub(re.compile(r"/([/s/S]*?/)"), '', poem) poem = re.sub(re.compile(r"([/s/S]*?)"), '', poem) poem = re.sub(re.compile(r"。/([/s/S]*?)"), '', poem) poem = poem.replace('!', '!').replace('?', '?') poem_list.append(poem)# 利用并發爬取executor = ThreadPoolExecutor(max_workers=10) # 可以自己調整max_workers,即線程的個數# submit()的參數: 第一個為函數, 之后為該函數的傳入參數,允許有多個future_tasks = [executor.submit(get_poem, url) for url in poem_links]# 等待所有的線程完成,才進入后續的執行wait(future_tasks, return_when=ALL_COMPLETED)# 將爬取的詩句寫入txt文件poems = list(set(poem_list))poems = sorted(poems, key=lambda x:len(x))for poem in poems: poem = poem.replace('《','').replace('》','') /    .replace(':', '').replace('“', '') print(poem) with open('F://poem.txt', 'a') as f:  f.write(poem)  f.write('/n')            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 超碰人人做人人爱 | 一本色道久久综合亚洲精品小说 | 操操日日 | 一区二区三区欧美在线 | 精品亚洲综合 | 懂色av懂色aⅴ精彩av | 亚州精品在线视频 | 成人黄视频在线观看 | 成人性爱视频在线观看 | 日本精品婷婷久久爽一下 | av电影院在线观看 | 日本爽快片100色毛片视频 | 国产午夜亚洲精品午夜鲁丝片 | 久久精品久 | 久久99久久98精品免观看软件 | 久久久久久久亚洲精品 | 中文字幕在线网站 | 亚洲视频在线一区二区 | 一区二区三区欧美精品 | 粉嫩粉嫩一区二区三区在线播放 | 久久精品视频一区 | 精国品产一区二区三区有限公司 | 亚洲成人免费电影 | 99国内精品视频 | 一区二区久久久久草草 | 免费观看黄视频 | 欧美一区二区片 | 欧美精品在线免费观看 | 色综合一区二区 | 免费播放欧美毛片 | 毛片在线免费视频 | videos真实高潮xxxx | 国产黄色毛片 | 精品国产91久久久久久 | 一夜新娘第三季免费观看 | 黄色va视频| 成年片在线观看 | 免费看污视频在线观看 | 91精品国产99久久久久久 | 欧美性色黄大片www 成人免费网站在线观看 | 午夜亚洲影院 |