|
require 'net/http' |
|
require 'timeout' |
|
require 'mysql2' # https://github.com/brianmario/mysql2 |
|
|
|
def download_to_database(url, sql_statement) |
|
Timeout::timeout(5) do # BUG. Never do this. |
|
res = Net::HTTP.get_response(url) |
|
sql_statement.execute(url.to_s, res.code, res.body) |
|
end |
|
end |
|
|
|
client = Mysql2::Client.new(...) |
|
statement = client.prepare( |
|
"INSERT INTO http_responses (url, status_code, body) VALUES (?, ?, ?)" |
|
) |
|
|
|
download_to_database(URI('http://example.com'), statement) |
|
download_to_database(URI('http://example.org'), statement) |
|
# ... et cetera |