使用BeautifulSoup刮取URL

时间:2016-04-01 11:27:11

标签: python html beautifulsoup

我正在抓一个网站进行板球时间表。我正在使用美丽的汤。 这是网址

www.ecb.c0.uk/stats/fixtures-results?m=1&y=2016

这是指2016年1月的所有灯具 我也试图刮掉其他年份和月份。有没有办法可以改变代码中的年份作为刮擦的一部分?我是否必须在URL中放置变量?我是否必须在列表中形成循环或循环?

 from bs4 import BeautifulSoup
 import requests

 html = requests.get("http://www.ecb.co.uk/stats/fixtures-results?m=1& y=2016").text
 soup = BeautifulSoup(html,'lxml')

1 个答案:

答案 0 :(得分:1)

你可以使用两个循环,第一个是年,第二个是几个月:

base_url = "http://www.ecb.co.uk/stats/fixtures-results?m={month}&y={year}"

for year in range(2000, 2017):
    for month in range(1, 13):
        requests.get(base_url.format(month=month, year=year))

itertools更短的变体:

for year, month in itertools.product(range(2000, 2017), range(1, 13)):
    requests.get(base_url.format(month=month, year=year))