SQLite Forum

sqlite bindings error
That is only one value that is a text string that contains an embedded ",".  

What you think are "multiple rows" are really just "\\n" separated text.

The content of *btc_price_rows* is not rows of fields.  It is one big text field that you need to parse into a list of tuples.  .executemany requires a sequence of sequences/dictionaries as the second parameter.  That is, each member of the outer sequence is used as the binding for the statement.  That is:

c.executemany(SQL, bindings)

is semantically equivalent to

for onebinding in bindings:
    c.execute(SQL, onebinding)

without the overhead of re-preparing the SQL for each iteration.

You probably want something like this:

btc_price_rows = []
for line in requests.get(url, params=data).text:
c.executemany("INSERT OR REPLACE INTO btc_price_table VALUES (?, ?)", btc_price_rows)