У меня есть python скрипт, который очищает доменные имена. Я только что проанализировал ответ json, потому что он отображает код html. Я использовал pandas, чтобы прочитать html и получить body
, который является содержимым html. Я попытался напечатать это, и затем я получил правильные значения. Теперь, когда я его получил, я хочу сохранить каждый результат в базе данных mysql. Как я мог достичь этого?
Вот мой скрипт
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="",
database='domainscrape'
)
mycursor = mydb.cursor()
print(mydb)
pageNumber = 0
while True:
driver.implicitly_wait(3)
driver.get('https://reversewhois.domaintools.com/?ajax=mReverseWhois&call=ajaxGetPreviewPage&q=%5B%5B%5B%22whois%22%2C%222%22%2C%22VerifiedID%40SG-Mandatory%22%5D%5D%5D&o='+str(pageNumber))
time.sleep(3)
pre = driver.find_element_by_tag_name("pre").text
data = json.loads(pre)
if data['body']:
table = data['body']
tables = pd.read_html(table,skiprows=1)
df = tables[-1]
print(df.to_string(index=False))
pageNumber += 1
continue
else:
break
Я получил такой результат
0vh-cl0ud.sg 2017-10-12 KEY-SYSTEMS GMBH
0vh-cloud.sg 2017-10-12 KEY-SYSTEMS GMBH
0vhcloud.sg 2017-10-12 KEY-SYSTEMS GMB
Попытался сохранить его в CSV-файл и получил хорошие результаты
df.to_csv('Domains.csv', mode='a', sep=',',index=False)
но я не хочу импортировать CSV в mysql. Я просто хочу напрямую вставить строки в существующую таблицу mysql.
Как я могу отформатировать его так: 0vh-cl0ud.sg
это домен 2017-10-12
это дата, а KEY-SYSTEMS GMBH
это компания? Я не включаю заголовок, так как в каждой итерации он печатает заголовок, и я не хочу его.