Como posso contar o número de polígonos que uma forma cruza?

Eu tenho um conjunto de dados muito grande com polígonos e pontos com buffers ao seu redor. Gostaria de criar uma nova coluna nos dados dos pontos, que inclui o número de polígonos que o buffer do ponto cruz

qui está um exemplo simplificado:

import pandas as pd
import geopandas as gp
from shapely.geometry import Polygon
from shapely.geometry import Point
import matplotlib.pyplot as plt

## Create polygons and points ##

df = gp.GeoDataFrame([['a',Polygon([(1, 0), (1, 1), (2,2), (1,2)])],
                     ['b',Polygon([(1, 0.25), (2,1.25), (3,0.25)])]],
                     columns = ['name','geometry'])
df = gp.GeoDataFrame(df, geometry = 'geometry')

points = gp.GeoDataFrame( [['box', Point(1.5, 1.115), 4],
                        ['triangle', Point(2.5,1.25), 8]],
                     columns=['name', 'geometry', 'value'], 
                     geometry='geometry')

##Set a buffer around the points##

buf = points.buffer(0.5)
points['buffer'] = buf
points = points.drop(['geometry'], axis = 1) 
points = points.rename(columns = {'buffer': 'geometry'})

Esses dados são assim: O que eu gostaria de fazer é criar outra coluna no dataframe de pontos que inclua o número de polígonos que se cruza

Tentei utilizar um loop for como tal:

points['intersect'] = []
for geo1 in points['geometry']:
    for geo2 in df['geometry']:
        if geo1.intersects(geo2):
            points['intersect'].append('1')

O que somaria para obter o número total de interseções. No entanto, recebo o erro: 'Comprimento dos valores não corresponde ao comprimento do índice'. Eu sei que isso ocorre porque ele está tentando atribuir três linhas de dados a um quadro com apenas duas linha

Como posso agregar as contagens para que o primeiro ponto receba o valor 2 e o segundo o valor

questionAnswers(1)

yourAnswerToTheQuestion