import urllib.request
import re
def jokeCrawler(url):
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.97 Safari/537.36'}
req = urllib.request.Request(url,headers=headers)
response = urllib.request.urlopen(req)
HTML = response.read().decode('utf-8')
pat = r'<div class="author clearfix">(.*?)<span class="stats-vote"><i class="number">'
re_joke = re.compile(pat,re.S)
divsList = re_joke.findall(HTML)
dic = {}
for div in divsList:
re_u = re.compile(r'<h2>(.*?)</h2>',re.S)
username = re_u.findall(div)
username = username[0]
re_d = re.compile(r'<div class="content">\n<span>(.*?)</span>',re.S)
duanzi = re_d.findall(div)
duanzi = duanzi[0]
dic[username] = duanzi
return dic
url = 'https://www.qiushibaike.com/text/'
info = jokeCrawler(url)
for k,v in info.items():
print(k + '说\n' +v)