Getting Beautiful在完成分页后运行列表



所以,我正在学习python和web抓取,所以如果这是非常基本的东西,请原谅我。

我找到了一个脚本,并对其进行了修改,以刮取yell.com

现在,我明白了分页。我能够使用与下面类似的代码来抓取一个城市的整个集合。


for x in range(1,9):
print(f'Scraping page {x}')
content = extract(f'https://www.yell.com/ucs/UcsSearchAction.do?scrambleSeed=134234234&keywords=dentists&location=birmingham&pageNum={x}')
transform(content)
time.sleep(5)
load()
print('Saved to CSV')

现在,我有一个我想刮的城市列表。

例如,上面的location=birmingham参数会改变location=portsmouth

我提出的解决方案是在一个数组中定义整个城市列表(可能很大(,然后调用它们。

然而,我希望刮到上面定义的整个范围,然后移动到另一个城市,重置范围。我想不通。

听起来你只需要包含一个第二个for循环就可以浏览你的长城市列表。然后city可以包含在您的URL中。例如:

cities = ['birmingham', 'portsmouth', 'london']  # long list of cities
for city in cities:
print(f'City - {city}')

for x in range(1, 9):
print(f'Scraping page {x}')
content = extract(f'https://www.yell.com/ucs/UcsSearchAction.do?scrambleSeed=134234234&keywords=dentists&location={city}&pageNum={x}')
transform(content)
time.sleep(5)
load()
print('Saved to CSV')

最新更新