python requests请求到的表格数据拿到pandas上创建DataFrame应该怎么做
时间: 2023-02-10 20:21:23 浏览: 47
你可以使用 `pandas.read_html` 函数将 HTML 表格数据解析为 `DataFrame`。
首先, 你需要使用 `requests` 库发送 HTTP 请求并获取 HTML 网页内容:
```python
import requests
url = 'http://example.com/table.html'
response = requests.get(url)
html = response.content
```
然后, 使用 `pandas.read_html` 函数解析 HTML 表格数据:
```python
import pandas as pd
df = pd.read_html(html)[0] # 解析出的第一个表格数据
```
`read_html` 函数会返回一个列表, 列表中的每个元素都是一个 `DataFrame` 对象。如果 HTML 网页中只有一个表格, 你可以像上面的代码一样, 直接取出列表中的第一个元素。如果有多个表格, 你可以通过下标访问列表中的其他元素来获取其他表格数据。
例如:
```python
df1 = pd.read_html(html)[0] # 解析出的第一个表格数据
df2 = pd.read_html(html)[1] # 解析出的第二个表格数据
```
相关问题
Python用pandas库爬取数据并保存到Excel表
以下是一个Python程序,使用pandas库来爬取数据并保存到Excel表中:
```python
import pandas as pd
import requests
# 请求URL
url = 'http://www.example.com/data'
# 发送HTTP请求,获取数据
response = requests.get(url)
# 将数据转换为Dataframe对象
dataframe = pd.read_json(response.text)
# 创建Excel文件
writer = pd.ExcelWriter('data.xlsx')
# 将数据写入Excel表中
dataframe.to_excel(writer, index=False)
# 保存Excel文件
writer.save()
```
这个程序首先使用requests库发送HTTP请求来获取数据。然后,使用pandas库将数据转换为Dataframe对象。最后,使用pandas库将Dataframe对象写入Excel表中,并保存Excel文件。
如何将爬取到的table转化为pandas的dataframe
要将爬取到的表格数据转化为Pandas的DataFrame,您可以使用Pandas库的`read_html()`函数。这个函数可以直接从HTML字符串或URL中读取表格数据并返回一个DataFrame对象。
以下是将爬取到的表格数据转化为Pandas的DataFrame的示例代码:
```python
import pandas as pd
import requests
url = 'http://www.boc.cn/sourcedb/whpj/'
# 发起请求获取网页内容
response = requests.get(url)
html = response.content
# 使用Pandas的read_html函数读取表格数据
dfs = pd.read_html(html)
# 假设我们想要获取第一个表格,可以通过索引来获取
df = dfs[0]
print(df)
```
在这个示例中,我们使用`requests`库发送HTTP请求获取网页内容,并将其传递给`read_html()`函数。`read_html()`函数会返回一个包含所有表格的列表,我们可以通过索引来选择我们需要处理的特定表格。在这个例子中,我们选择了第一个表格(索引为0),并将其赋值给变量`df`。然后,我们打印输出了这个DataFrame对象。
请注意,`read_html()`函数返回的是一个DataFrame对象的列表,因为一个网页可能包含多个表格。根据实际情况,您可能需要选择适合您需求的特定表格。