我目前正在尝试重新格式化下面的字符串以适应以下格式(日期、数字、数字、数字、数字、数字)。
03262019,3 10 19 30 38
03252019,7 17 23 24 31
03242019,3 7 12 23 32
03232019,6 9 14 19 28
03222019,5 11 12 13 25
进入:
03262019,3,10,19,30,38
03252019,7,17,23,24,31
03242019,3,7,12,23,32
03232019,6,9,14,19,28
03222019,5,11,12,13,25
代码:
import requests
from bs4 import BeautifulSoup
from datetime import datetime
response = requests.get('https://www.lotterycorner.com/mi/fantasy-5/2019')
soup = BeautifulSoup(response.text, 'html.parser')
date = soup.find_all("td", {"class":"win-nbr-date col-sm-3 col-xs-4"})
results = soup.find_all("ul",{"class":"nbr-grp"})
for date, results in zip(date, results):
date2 = (date.get_text())
date = (datetime.strptime(date2, '%b %d, %Y'))
Fantasy52019 = (date.strftime("%m%d%Y")+(',')+results.get_text().strip())
print(Fantasy52019)
和这些字符串:
03262019,4 14224358 巨型球 9 巨型放大器 3 X
03222019,7 36586062 巨型球 10Megaplier 3 X
03192019,10 42536768 巨型球 15Megaplier 3 X
03152019,3 29566264 巨型球 4 巨型放大器 3 X
03122019,10 12164957 巨型球 18Megaplier 4 X
03082019,4 9 426268 巨型球 7 巨型放大器 4 X
03052019,15 20323752 巨型球 6 巨型放大器 5 X
进入:
03262019,4,14,22,43,58,9
03222019,7,36,58,60,62,10
03192019,10,42,53,67,68,15
03152019,3,29,56,62,64,4
03122019,10,12,16,49,57,18
03082019,4,9,42,62,68,7
03052019,15,20,32,37,52,6
最佳答案
import requests
from bs4 import BeautifulSoup
from datetime import datetime
response = requests.get('https://www.lotterycorner.com/mi/mega-millions/2019')
soup = BeautifulSoup(response.text, 'html.parser')
date = soup.find_all("td", {"class":"win-nbr-date col-sm-3 col-xs-4"})
dates = []
for date in date:
date2 = (date.get_text())
date = (datetime.strptime(date2, '%b %d, %Y'))
MegaMillions2019 = (date.strftime("%m%d%Y"))
dates.append(str(MegaMillions2019))
data = []
for ultag in soup.find_all("ul",{"class":"nbr-grp"}):
for litag in ultag.find_all('li'):
results = (litag.get_text().replace(' ','').replace('MegaBall',''))
data.append(results)
parsed = []
joined = []
for i in range(int(len(data)/7)):
j = i*7
parsed.append(data[j:j+6])
parsedline = [', '.join(parsed[j]) for j in range(len(parsed))][i]
joined.append(parsedline)
results = '\n'.join(joined)
print(results.replace(' ',''))
关于python - 将打印字符串重新格式化为特定格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55381684/