Как исправить "ValueError: данные времени '\nJuly 4, 2022\n' не соответствуют формату '%B %d, %Y'"?
При отбраковке сайта на предмет данных я получил эту ошибку. Некоторые даты в формате мм дд, гггг, а другие в формате мм дд, гггг. Я прочитал документацию и попробовал различные решения на stackoverflow, но, похоже, ничего не работает.
import requests
from datetime import datetime
def jobScan(link):
the_job = {}
jobUrl = link['href']
the_job['urlLink'] = jobUrl
jobs = requests.get(jobUrl, headers = headers )
jobC = jobs.content
jobSoup = BeautifulSoup(jobC, "lxml")
table = soup.find_all("a", attrs = {"class": "job-details-link"})
postDate = jobSoup.find_all("span", {"class": "job-date__posted"})[0]
postDate = postDate.text
date_posted = datetime.strptime(postDate, '%B %d, %Y')
the_job['date_posted'] = date_posted
closeDate = jobSoup.find_all("span", {"class": "job-date__closing"})[0]
closeDate = closeDate.text
closing_date = datetime.strptime(closeDate, '%B %d, %Y')
the_job['closing_date'] = closing_date
return the_job
однако я получаю эту ошибку
ValueError: time data '\nJuly 4, 2022\n' does not match format '%B %d, %Y'
и когда я пробую другой формат, я получаю следующее
ValueError: '-' is a bad directive in format '%B %-d, %Y'
Что я могу делать неправильно?
Попытка:
date_posted = datetime.strptime(postDate.replace('\n',''), '%B %d, %Y')