python仅用requests爬取表格以及折线图数据
时间: 2023-09-19 22:10:12 浏览: 58
以下是一个示例代码,可以使用requests库从网页中提取表格数据和折线图数据:
```
import requests
from bs4 import BeautifulSoup
import pandas as pd
import matplotlib.pyplot as plt
# 从网页中获取表格数据
url = 'https://www.example.com/table'
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
table = soup.find('table')
df = pd.read_html(str(table))[0]
print(df)
# 从网页中获取折线图数据
url = 'https://www.example.com/linechart'
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
chart_data = []
for script in soup.find_all('script'):
if 'Highcharts.chart' in script.text:
chart_data = script.text.strip().split('series:')[1].split(']')[0] + ']'
break
chart_data = chart_data.replace('name:', '"name":').replace('data:', '"data":')
chart_data = chart_data.replace("'", '"')
chart_data = json.loads(chart_data)
print(chart_data)
# 绘制折线图
x = chart_data[0]['data']
y = chart_data[1]['data']
plt.plot(x, y)
plt.show()
```
请注意,此示例仅适用于网站上使用HTML和JavaScript生成表格和折线图的情况。如果网站使用其他技术(如AJAX)生成数据,则需要使用其他库(如Selenium)来模拟浏览器行为并提取数据。