此代码可用于导入必备库来刮取和解析 web 数据,并将其导入数据库:使用 python 请求库获取 web 页面。使用 beautifulsoup 库解析页面并提取所需数据。使用 sqlite3 库建立数据库连接并创建表。将提取的数据写入数据库表中。提交更改并关闭数据库连接。
使用 Python 和 SQL 刮取和解析 Web 数据
导入必备库
import requests from bs4 import BeautifulSoup import sqlite3
登录后复制
请求和解析 Web 页面
url = 'https://example.com/page/' response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser')
登录后复制
提取所需数据
使用 find_all()
和 get_text()
方法从页面中提取所需数据。
titles = soup.find_all('h1') titles = [title.get_text() for title in titles]
登录后复制
建立数据库连接
conn = sqlite3.connect('database.db') c = conn.cursor()
登录后复制
将数据写入数据库
for title in titles: c.execute('INSERT INTO titles (title) VALUES (?)', (title,))
登录后复制
提交更改并关闭连接
conn.commit() conn.close()
登录后复制
实战案例
使用此代码刮取了 Amazon 首页的顶级产品标题数据,并将其存储在 SQLite 数据库中。以下是演示代码:
import requests from bs4 import BeautifulSoup import sqlite3 url = 'https://amazon.com' response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser') titles = soup.find_all('h2', {'class': 'a-size-medium s-inline s-access-title'}) titles = [title.get_text().strip() for title in titles] conn = sqlite3.connect('amazon_titles.db') c = conn.cursor() for title in titles: c.execute('INSERT INTO titles (title) VALUES (?)', (title,)) conn.commit() conn.close()
登录后复制
以上就是HTML 段落间距加两格的详细内容,更多请关注叮当号网其它相关文章!
文章来自互联网,只做分享使用。发布者:叮当,转转请注明出处:https://www.dingdanghao.com/article/324133.html