Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Python脚本中添加一个循环来刮取网站_Python_Web Scraping - Fatal编程技术网

如何在Python脚本中添加一个循环来刮取网站

如何在Python脚本中添加一个循环来刮取网站,python,web-scraping,Python,Web Scraping,我有一个脚本,刮一个网站。然而,我正在寻找它,以逐步刮为一个范围的网站。因此,假设范围设置为0-999。代码是: import requests from bs4 import BeautifulSoup URL = 'https://www.greekrank.com/uni/1/sororities/' page = requests.get(URL) soup = BeautifulSoup(page.content, 'html.parser') uni = soup.find_a

我有一个脚本,刮一个网站。然而,我正在寻找它,以逐步刮为一个范围的网站。因此,假设范围设置为0-999。代码是:

import requests
from bs4 import BeautifulSoup

URL = 'https://www.greekrank.com/uni/1/sororities/'
page = requests.get(URL)

soup = BeautifulSoup(page.content, 'html.parser')

uni = soup.find_all('h1', class_='overviewhead')
for title in uni:
    print(title.text)

rows = soup.find_all('div', class_='desktop-view')
for row in rows:
    print(row.text)

它会去刮那个,然后去刮那个,等等。

将它全部包装成一个循环。还要注意URL分配

导入请求
从bs4导入BeautifulSoup
对于范围(0999)内的x:
URL=f'https://www.greekrank.com/uni/{x} /女生联谊会/'
page=请求.get(URL)
soup=BeautifulSoup(page.content,'html.parser')
uni=soup.find_all('h1',class='overview')
uni中的标题:
打印(标题.文本)
rows=soup.find_all('div',class='desktop-view')
对于行中的行:
打印(行.文本)

将其全部包装在一个循环中。还要注意URL分配

导入请求
从bs4导入BeautifulSoup
对于范围(0999)内的x:
URL=f'https://www.greekrank.com/uni/{x} /女生联谊会/'
page=请求.get(URL)
soup=BeautifulSoup(page.content,'html.parser')
uni=soup.find_all('h1',class='overview')
uni中的标题:
打印(标题.文本)
rows=soup.find_all('div',class='desktop-view')
对于行中的行:
打印(行.文本)

好吧,只需为循环编写一个
?您已经编写了其中的两个,因此应该知道如何执行。那么,只需为
循环编写一个
?您已经编写了其中两个,因此您应该知道如何执行。此外,请注意在每次迭代后添加一些延迟,这样您就不会因请求而使服务器过载!当我在空闲状态下运行时,它似乎没有显示任何内容。你知道这会在哪里被抓到吗?如果这个网站不存在(比如说“12”),它会绕过它继续运行,还是一直坚持下去?我尝试了以下方法,但没有成功:从时间导入请求从bs4导入睡眠从bs4导入BeautifulSoup for x范围(0,10):try:URL=f'{x}/sororities/'page=requests.get(URL)soup=BeautifulSoup(page.content,'html.parser')uni=soup.find_all('h1',class='overview')表示uni中的标题:print(title.text)rows=soup.find_all('div',class='desktop-view')表示行中的行:print(row.text)time.sleep(1)除此之外:您可以在请求之后添加对状态代码的检查。如果不是您所期望的(可能是200),那么继续
并且,在每次迭代后注意增加一些延迟,这样您就不会用请求使服务器过载!当我在空闲状态下运行时,它似乎没有显示任何内容。你知道这会在哪里被抓到吗?如果这个网站不存在(比如说“12”),它会绕过它继续运行,还是一直坚持下去?我尝试了以下方法,但没有成功:从时间导入请求从bs4导入睡眠从bs4导入BeautifulSoup for x范围(0,10):try:URL=f'{x}/sororities/'page=requests.get(URL)soup=BeautifulSoup(page.content,'html.parser')uni=soup.find_all('h1',class='overview')表示uni中的标题:print(title.text)rows=soup.find_all('div',class='desktop-view')表示行中的行:print(row.text)time.sleep(1)除此之外:您可以在请求之后添加对状态代码的检查。如果不是您所期望的(可能是200),则
继续