PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Wstaw zeskrobane dane tabeli bezpośrednio do bazy danych PostgreSQL

Zakładam, że cols zawiera 5 elementów, w kolejności, w jakiej zaprezentowałeś przy stole, w przeciwnym razie dostosuj indeksy.

import csv
import urllib.request

from bs4 import BeautifulSoup

conn = psycopg2.connect(database='--', user='--', password='--', port='--')
cursor = conn.cursor()
soup = BeautifulSoup(urllib.request.urlopen(
    "http://tis.nhai.gov.in/TollInformation?TollPlazaID=236").read(), 'lxml')
tbody = soup('table', {"class": "tollinfotbl"})[0].find_all('tr')
for row in tbody:
    cols = row.findChildren(recursive=False)
    cols = [ele.text.strip() for ele in cols]
    if cols:
        vehicle_type = cols[0]
        one_time = int(cols[1])
        return_strip = int(cols[2])
        monthly_pass = int(cols[3])
        local_vehicle = int(cols[4])

        query = "INSERT INTO table_name (vehicle_type, return_strip, monthly_pass, local_vehicle) VALUES (%s, %s, %s, %s, %s);"
        data = (vehicle_type, one_time, return_strip, monthly_pass, local_vehicle)
        cursor.execute(query, data)

# Commit the transaction
conn.commit()



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. W ramach funkcji wyzwalacza, jak uzyskać, które pola są aktualizowane?

  2. Porządkowanie wyników zapytania według ciągów numerycznych w django (backend postgres)

  3. Replikacja strumieniowa PostgreSQL a replikacja logiczna

  4. Łatwy sposób, aby zwracany typ był tabelą SETOF i dodatkowymi polami?

  5. Przekazywanie wielu wartości w jednym parametrze