我有以下代码可以正常工作:
import requests
from bs4 import BeautifulSoup
import pandas as pd
df_list = []
for i in range(1, 13):
url = 'https://www.uzse.uz/trade_results?date=25.01.2019&mkt_id=ALL&page=%d' %i
df_list.append(pd.read_html(url)[0])
df = pd.concat(df_list)
df
但是对于这个特定的页面,我知道页数,在 range(1, 13)
中是 13。有没有办法定义最后一页,这样我就不必去检查给定页面上有多少页?
最佳答案
试试
for i in range(1, 100):
url = 'https://www.uzse.uz/trade_results?date=25.01.2019&mkt_id=ALL&page=%d' %i
if pd.read_html(url)[0].empty:
break
else :
df_list.append(pd.read_html(url)[0])
page=0 # using while
while page > 0:
url = 'https://www.uzse.uz/trade_results?date=25.01.2019&mkt_id=ALL&page=%d' % i
df_list.append(pd.read_html(url)[0])
page = page + 1
if pd.read_html(url)[0].empty:
break
print(page)
关于python - 抓取一个遍历网站页面的表格 : how to define the last page?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54393236/