Я нашел этот пример кода на сайте и попытался реализовать его в соответствии с тем, как я хочу, чтобы он работал. К сожалению, оригинальный код работает нормально, есть несколько строк очищенных элементов, но тот, который я изменил, вставляет только 1 элемент.
from urllib import urlopen
from bs4 import BeautifulSoup
import pymysql.cursors
html = urlopen("https://www.banggood.com/Wholesale-Computer-and-Networking-c-155.html")
bsObj = BeautifulSoup(html, "html.parser")
recordList = bsObj.findAll("div", {"class": "wrap overflow", })
connection = pymysql.connect(host='localhost',
user='root',
password='',
db='db',
charset='utf8mb4',
cursorclass=pymysql.cursors.DictCursor)
try:
with connection.cursor() as cursor:
for record in recordList:
title = record.find("span", {"class": 'title', }).get_text().strip()
artist = record.find("span", {"class": "price wh_cn"}).get_text().strip()
sql = "INSERT INTO `artist_song` (`artist`, `song`) VALUES (%s, %s)"
cursor.execute(sql, (artist, title))
connection.commit()
finally:
connection.close()
Что я сделал не так?