Home > Mobile >  Repeated items in list when web scraping with BeautifulSoup
Repeated items in list when web scraping with BeautifulSoup

Time:03-18

I've just started programming, so the solution might be obvious to anyone else, but I'm puzzled by this problem. I'm trying to create a list variable which contains all spanish verbs present on a certain website. I'm using Python with BeautifulSoup.

My code is supposed to:

  1. look at the html of the first webpage with verbs of the letter a
  2. obtain links to all pages with verbs of the letter a
  3. for each page of verbs, find the verbs present
  4. print a list of all verbs

Problem: The printed result repeats verbs found together on each page with some kind of regularity, and does so throughout the output, while somehow still progressing aphabetically. It should print all verbs on a page once, then move on to print verbs from the next page once, etc.

What I've tried: -Varying indentation -isolating blocks of code -excluding code -checking variablenames -placing print statements throughout to check intermediate results of for loops

Code:

from bs4 import BeautifulSoup
import requests

allverbs = []
url2 = f"https://www.linguasorb.com/spanish/verbs/beginning-with-a"
webpage = requests.get(url2)
letter = BeautifulSoup(webpage.content, 'html.parser')

links = []
page2 = letter.find('ul', class_='pagination')
page3 = page2.find_all('a', href=True)
for a in page3:
    links.append(a['href'])
    newlinks = []
    for x in links:
        newlinks.append(f"https://www.linguasorb.com{x}")
    for new in newlinks:
        webpage2 = requests.get(new)
        pagination = BeautifulSoup(webpage2.content, 'html.parser')
        for y in pagination:
            verbTable = pagination.find('table', class_='table-striped')
            findatag = verbTable.find_all('a', class_=None)
            for infinitiveVerb in findatag:
                allverbs.append(infinitiveVerb.span.text)
print(allverbs)

Output (shortened):

C:\Users\name\PycharmProjects\spanishTranslateAPI\venv\Scripts\python.exe C:/Users/name/PycharmProjects/spanishTranslateAPI/allverbstest.py
['abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'acariciar', 'acarrear', 'acartonar', 'acatar', 'acaudillar', 'acceder', 'accionar', 'acechar', 'aceitar', 'acelerar', 'acendrar', 'acensuar', 'acentuar', 'aceptar', 'acerar', 'acercar', 'acertar', 'acezar', 'achantar', 'achatar', 'achicar', 'achicharrar', 'aciberar', 'acicalar', 'acidificar', 'aclamar', 'aclarar', 'aclimatar', 'acobardar', 'acoger', 'acogotar', 'acolchar', 'acollar', 'acometer', 'acomodar', 'acompañar', 'acompasar', 'acomplejar', 'acongojar', 'aconsejar', 'acontecer', 'acopiar', 'acoplar', 'acordar', 'acortar', 'acosar', 'acostar', 'acostumbrar', 'acotar', 'acrecentar', 'acariciar', 'acarrear', 'acartonar', 'acatar', 'acaudillar', 'acceder', 'accionar', 'acechar', 'aceitar', 'acelerar', 'acendrar', 'acensuar', 'acentuar', 'aceptar', 'acerar', 'acercar', 'acertar', 'acezar', 'achantar', 'achatar', 'achicar', 'achicharrar', 'aciberar', 'acicalar', 'acidificar', 'aclamar', 'aclarar', 'aclimatar', 'acobardar', 'acoger', 'acogotar', 'acolchar', 'acollar', 'acometer', 'acomodar', 'acompañar', 'acompasar', 'acomplejar', 'acongojar', 'aconsejar', 'acontecer', 'acopiar', 'acoplar', 'acordar', 'acortar', 'acosar', 'acostar', 'acostumbrar', 'acotar', 'acrecentar', 'acariciar', 'acarrear', 'acartonar', 'acatar', 'acaudillar', 'acceder', 'accionar', 'acechar', 'aceitar', 'acelerar', 'acendrar', 'acensuar', 'acentuar', 'aceptar', 'acerar', 'acercar', 'acertar', 'acezar', 'achantar', 'achatar', 'achicar', 'achicharrar', 'aciberar', 'acicalar', 'acidificar', 'aclamar', 'aclarar', 'aclimatar', 'acobardar', 'acoger', 'acogotar', 'acolchar', 'acollar', 'acometer', 'acomodar', 'acompañar', 'acompasar', 'acomplejar', 'acongojar', 'aconsejar', 'acontecer', 'acopiar', 'acoplar', 'acordar', 'acortar', 'acosar', 'acostar', 'acostumbrar', 'acotar', 'acrecentar', 'acariciar', 'acarrear', 'acartonar', 'acatar', 'acaudillar', 'acceder', 'accionar', 'acechar', 'aceitar', 'acelerar', 'acendrar', 'acensuar', 'acentuar', 'aceptar', 'acerar', 'acercar', 'acertar', 'acezar', 'achantar', 'achatar', 'achicar', 'achicharrar', 'aciberar', 'acicalar', 'acidificar', 'aclamar', 'aclarar', 'aclimatar', 'acobardar', 'acoger', 'acogotar', 'acolchar', 'acollar', 'acometer', 'acomodar', 'acompañar', 'acompasar', 'acomplejar', 'acongojar', 'aconsejar', 'acontecer', 'acopiar', 'acoplar', 'acordar', 'acortar', 'acosar', 'acostar', 'acostumbrar', 'acotar', 'acrecentar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'acariciar', 'acarrear', 'acartonar', 'acatar', 'acaudillar', 'acceder', 'accionar', 'acechar', 'aceitar', 'acelerar', 'acendrar', 'acensuar', 'acentuar', 'aceptar', 'acerar', 'acercar', 'acertar', 'acezar', 'achantar', 'achatar', 'achicar', 'achicharrar', 'aciberar', 'acicalar', 'acidificar', 'aclamar', 'aclarar', 'aclimatar', 'acobardar', 'acoger', 'acogotar', 'acolchar', 'acollar', 'acometer', 'acomodar', 'acompañar', 'acompasar', 'acomplejar', 'acongojar', 'aconsejar', 'acontecer', 'acopiar', 'acoplar', 'acordar', 'acortar', 'acosar', 'acostar', 'acostumbrar', 'acotar', 'acrecentar', 'acariciar', 'acarrear', 'acartonar', 'acatar', 'acaudillar', 'acceder', 'accionar', 'acechar', 'aceitar', 'acelerar', 'acendrar', 'acensuar', 'acentuar', 'aceptar', 'acerar', 'acercar', 'acertar', 'acezar', 'achantar', 'achatar', 'achicar', 'achicharrar', 'aciberar', 'acicalar', 'acidificar', 'aclamar', 'aclarar', 'aclimatar', 'acobardar', 'acoger', 'acogotar', 'acolchar', 'acollar', 'acometer', 'acomodar', 'acompañar', 'acompasar', 'acomplejar', 'acongojar', 'aconsejar', 'acontecer', 'acopiar', 'acoplar', 'acordar', 'acortar', 'acosar', 'acostar', 'acostumbrar', 'acotar', 'acrecentar', 'acariciar', 'acarrear', 'acartonar', 'acatar', 'acaudillar', 'acceder', 'accionar', 'acechar', 'aceitar', 'acelerar', 'acendrar', 'acensuar', 'acentuar', 'aceptar', 'acerar', 'acercar', 'acertar', 'acezar', 'achantar', 'achatar', 'achicar', 'achicharrar', 'aciberar', 'acicalar', 'acidificar', 'aclamar', 'aclarar', 'aclimatar', 'acobardar', 'acoger', 'acogotar', 'acolchar', 'acollar', 'acometer', 'acomodar', 'acompañar', 'acompasar', 'acomplejar', 'acongojar', 'aconsejar', 'acontecer', 'acopiar', 'acoplar', 'acordar', 'acortar', 'acosar', 'acostar', 'acostumbrar', 'acotar', 'acrecentar', 'acariciar', 'acarrear', 'acartonar', 'acatar', 'acaudillar', 'acceder', 'accionar', 'acechar', 'aceitar', 'acelerar', 'acendrar', 'acensuar', 'acentuar', 'aceptar', 'acerar', 'acercar', 'acertar', 'acezar', 'achantar', 'achatar', 'achicar', 'achicharrar', 'aciberar', 'acicalar', 'acidificar', 'aclamar', 'aclarar', 'aclimatar', 'acobardar', 'acoger', 'acogotar', 'acolchar', 'acollar', 'acometer', 'acomodar', 'acompañar', 'acompasar', 'acomplejar', 'acongojar', 'aconsejar', 'acontecer', 'acopiar', 'acoplar', 'acordar', 'acortar', 'acosar', 'acostar', 'acostumbrar', 'acotar', 'acrecentar', 'acreditar', 'acribillar', 'acriminar', 'acrisolar', 'acromatizar', 'activar', 'actualizar', 'actuar', 'acuartelar', 'acuatizar', 'acuchillar', 'acuciar', 'acudir', 'acuitar', 'acumular', 'acunar', 'acuñar', 'acusar', 'adaptar', 'adecentar', 'adecuar', 'adelantar', 'adelgazar', 'aderezar', 'adeudar', 'adherir', 'adicionar', 'adiestrar', 'adivinar', 'adjetivar', 'adjudicar', 'adjuntar', 'administrar', 'admirar', 'admitir', 'adoctrinar', 'adolecer', 'adoptar', 'adorar', 'adormecer', 'adornar', 'adquirir', 'aduanar', 'aducir', 'adular', 'adulterar', 'advertir', 'afanar', 'afectar', 'afeitar', 'acreditar', 'acribillar', 'acriminar', 'acrisolar', 'acromatizar', 'activar', 'actualizar', 'actuar', 'acuartelar', 'acuatizar', 'acuchillar', 'acuciar', 'acudir', 'acuitar', 'acumular', 'acunar', 'acuñar', 'acusar', 'adaptar', 'adecentar', 'adecuar', 'adelantar', 'adelgazar', 'aderezar', 'adeudar', 'adherir', 'adicionar', 'adiestrar', 'adivinar', 'adjetivar', 'adjudicar', 'adjuntar', 'administrar', 'admirar', 'admitir', 'adoctrinar', 'adolecer', 'adoptar', 'adorar', 'adormecer', 'adornar', 'adquirir', 'aduanar', 'aducir', 'adular', 'adulterar', 'advertir', 'afanar', 'afectar', 'afeitar', 'acreditar', 'acribillar', 'acriminar', 'acrisolar', 'acromatizar', 'activar', 'actualizar', 'actuar', 'acuartelar', 'acuatizar', 'acuchillar', 'acuciar', 'acudir', 'acuitar', 'acumular', 'acunar', 'acuñar', 'acusar', 'adaptar', 'adecentar', 'adecuar', 'adelantar', 'adelgazar', 'aderezar', 'adeudar', 'adherir', 'adicionar', 'adiestrar', 'adivinar', 'adjetivar', 'adjudicar', 'adjuntar', 'administrar', 'admirar', 'admitir', 'adoctrinar', 'adolecer', 'adoptar', 'adorar', 'adormecer', 'adornar', 'adquirir', 'aduanar', 'aducir', 'adular', 'adulterar', 'advertir', 'afanar', 'afectar', 'afeitar', 'acreditar', 'acribillar', 'acriminar', 'acrisolar', 'acromatizar', 'activar', 'actualizar', 'actuar', 'acuartelar', 'acuatizar', 'acuchillar', 'acuciar', 'acudir', 'acuitar', 'acumular', 'acunar', 'acuñar', 'acusar', 'adaptar', 'adecentar', 'adecuar', 'adelantar', 'adelgazar', 'aderezar', 'adeudar', 'adherir', 'adicionar', 'adiestrar', 'adivinar', 'adjetivar', 'adjudicar', 'adjuntar', 'administrar', 'admirar', 'admitir', 'adoctrinar', 'adolecer', 'adoptar', 'adorar', 'adormecer', 'adornar', 'adquirir', 'aduanar', 'aducir', 'adular', 'adulterar', 'advertir', 'afanar', 'afectar', 'afeitar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'acariciar', 'acarrear', 'acartonar', 'acatar', 'acaudillar', 'acceder', 'accionar', 'acechar', 'aceitar', 'acelerar', 'acendrar', 'acensuar', 'acentuar', 'aceptar', 'acerar', 'acercar', 'acertar', 'acezar', 'achantar', 'achatar', 'achicar', 'achicharrar', 'aciberar', 'acicalar', 'acidificar', 'aclamar', 'aclarar', 'aclimatar', 'acobardar', 'acoger', 'acogotar', 'acolchar', 'acollar', 'acometer', 'acomodar', 'acompañar', 'acompasar', 'acomplejar', 'acongojar', 'aconsejar', 'acontecer', 'acopiar', 'acoplar', 'acordar', 'acortar', 'acosar', 'acostar', 'acostumbrar', 'acotar', 'acrecentar', 'acariciar', 'acarrear', 'acartonar', 'acatar', 'acaudillar', 'acceder', 'accionar', 'acechar', 'aceitar', 'acelerar', 'acendrar', 'acensuar', 'acentuar', 'aceptar', 'acerar', 'acercar', 'acertar', 'acezar', 'achantar', 'achatar', 'achicar', 'achicharrar', 'aciberar', 'acicalar', 'acidificar', 'aclamar', 'aclarar', 'aclimatar', 'acobardar', 'acoger', 'acogotar', 'acolchar', 'acollar', 'acometer', 'acomodar', 'acompañar', 'acompasar', 'acomplejar', 'acongojar', 'aconsejar', 'acontecer', 'acopiar', 'acoplar', 'acordar', 'acortar', 'acosar', 'acostar', 'acostumbrar', 'acotar', 'acrecentar', 'acariciar', 'acarrear', 'acartonar', 'acatar', 'acaudillar', 'acceder', 'accionar', 'acechar', 'aceitar', 'acelerar', 'acendrar', 'acensuar', 'acentuar', 'aceptar', 'acerar', 'acercar', 'acertar', 'acezar', 'achantar', 'achatar', 'achicar', 'achicharrar', 'aciberar', 'acicalar', 'acidificar', 'aclamar', 'aclarar', 'aclimatar', 'acobardar', 'acoger', 'acogotar', 'acolchar', 'acollar', 'acometer', 'acomodar', 'acompañar', 'acompasar', 'acomplejar', 'acongojar', 'aconsejar', 'acontecer', 'acopiar', 'acoplar', 'acordar', 'acortar', 'acosar', 'acostar', 'acostumbrar', 'acotar', 'acrecentar', 'acariciar', 'acarrear', 'acartonar', 'acatar', 'acaudillar', 'acceder', 'accionar', 'acechar', 'aceitar', 'acelerar', 'acendrar', 'acensuar', 'acentuar', 'aceptar', 'acerar', 'acercar', 'acertar', 'acezar', 'achantar', 'achatar', 'achicar', 'achicharrar', 'aciberar', 'acicalar', 'acidificar', 'aclamar', 'aclarar', 'aclimatar', 'acobardar', 'acoger', 'acogotar', 'acolchar', 'acollar', 'acometer', 'acomodar', 'acompañar', 'acompasar', 'acomplejar', 'acongojar', 'aconsejar', 'acontecer', 'acopiar', 'acoplar', 'acordar', 'acortar', 'acosar', 'acostar', 'acostumbrar', 'acotar', 'acrecentar', 'acreditar', 'acribillar', 'acriminar', 'acrisolar', 'acromatizar', 'activar', 'actualizar', 'actuar', 'acuartelar', 'acuatizar', 'acuchillar', 'acuciar', 'acudir', 'acuitar', 'acumular', 'acunar', 'acuñar', 'acusar', 'adaptar', 'adecentar', 'adecuar', 'adelantar', 'adelgazar', 'aderezar', 'adeudar', 'adherir', 'adicionar', 'adiestrar', 'adivinar', 'adjetivar', 'adjudicar', 'adjuntar', 'administrar', 'admirar', 'admitir', 'adoctrinar', 'adolecer', 'adoptar', 'adorar', 'adormecer', 'adornar', 'adquirir', 'aduanar', 'aducir', 'adular', 'adulterar', 'advertir', 'afanar', 'afectar', 'afeitar', 'acreditar', 'acribillar', 'acriminar', 'acrisolar', 'acromatizar', 'activar', 'actualizar', 'actuar', 'acuartelar', 'acuatizar', 'acuchillar', 'acuciar', 'acudir', 'acuitar', 'acumular', 'acunar', 'acuñar', 'acusar', 'adaptar', 'adecentar', 'adecuar', 'adelantar', 'adelgazar', 'aderezar', 'adeudar', 'adherir', 'adicionar', 'adiestrar', 'adivinar', 'adjetivar', 'adjudicar', 'adjuntar', 'administrar', 'admirar', 'admitir', 'adoctrinar', 'adolecer', 'adoptar', 'adorar', 'adormecer', 'adornar', 'adquirir', 'aduanar', 'aducir', 'adular', 'adulterar', 'advertir', 'afanar', 'afectar', 'afeitar', 'acreditar', 'acribillar', 'acriminar', 'acrisolar', 'acromatizar', 'activar', 'actualizar', 'actuar', 'acuartelar', 'acuatizar', 'acuchillar', 'acuciar', 'acudir', 'acuitar', 'acumular', 'acunar', 'acuñar', 'acusar', 'adaptar', 'adecentar', 'adecuar', 'adelantar', 'adelgazar', 'aderezar', 'adeudar', 'adherir', 'adicionar', 'adiestrar', 'adivinar', 'adjetivar', 'adjudicar', 'adjuntar', 'administrar', 'admirar', 'admitir', 'adoctrinar', 'adolecer', 'adoptar', 'adorar', 'adormecer', 'adornar', 'adquirir', 'aduanar', 'aducir', 'adular', 'adulterar', 'advertir', 'afanar', 'afectar', 'afeitar', 'acreditar', 'acribillar', 'acriminar', 'acrisolar', 'acromatizar', 'activar', 'actualizar', 'actuar', 'acuartelar', 'acuatizar', 'acuchillar', 'acuciar', 'acudir', 'acuitar', 'acumular', 'acunar', 'acuñar', 'acusar', 'adaptar', 'adecentar', 'adecuar', 'adelantar', 'adelgazar', 'aderezar', 'adeudar', 'adherir', 'adicionar', 'adiestrar', 'adivinar', 'adjetivar', 'adjudicar', 'adjuntar', 'administrar', 'admirar', 'admitir', 'adoctrinar', 'adolecer', 'adoptar', 'adorar', 'adormecer', 'adornar', 'adquirir', 'aduanar', 'aducir', 'adular', 'adulterar', 'advertir', 'afanar', 'afectar', 'afeitar', 'afianzar', 'afilar', 'afiliar', 'afinar', 'afirmar', 'afligir', 'aflojar', 'aflorar', 'afluir', 'aforar', 'aforrar', 'afrentar', 'afrontar', 'agachar', 'agarrar', 'agarrochar', 'agarrotar', 'agasajar', 'agilizar', 'agitar', 'aglomerar', 'agobiar', 'agonizar', 'agorar', 'agostar', 'agotar', 'agradar', 'agradecer', 'agrandar', 'agravar', 'agredir', 'agregar', 'agrupar', 'aguantar', 'aguar', 'aguardar', 'agudizar', 'aguijar', 'agujerear', 'aguzar', 'aherir', 'ahogar', 'ahondar', 'ahorcar', 'ahorquillar', 'ahorrar', 'ahuchar', 'ahuecar', 'ahumar', 'ahuyentar', 'afianzar', 'afilar', 'afiliar', 'afinar', 'afirmar', 'afligir', 'aflojar', 'aflorar', 'afluir', 'aforar', 'aforrar', 'afrentar', 'afrontar', 'agachar', 'agarrar', 'agarrochar', 'agarrotar', 'agasajar', 'agilizar', 'agitar', 'aglomerar', 'agobiar', 'agonizar', 'agorar', 'agostar', 'agotar', 'agradar', 'agradecer', 'agrandar', 'agravar', 'agredir', 'agregar', 'agrupar', 'aguantar', 'aguar', 'aguardar', 'agudizar', 'aguijar', 'agujerear', 'aguzar', 'aherir', 'ahogar', 'ahondar', 'ahorcar', 'ahorquillar', 'ahorrar', 'ahuchar', 'ahuecar', 'ahumar', 'ahuyentar', 'afianzar', 'afilar', 'afiliar', 'afinar', 'afirmar', 'afligir', 'aflojar', 'aflorar', 'afluir', 'aforar', 'aforrar', 'afrentar', 'afrontar', 'agachar', 'agarrar', 'agarrochar', 'agarrotar', 'agasajar', 'agilizar', 'agitar', 'aglomerar', 'agobiar', 'agonizar', 'agorar', 'agostar', 'agotar', 'agradar', 'agradecer', 'agrandar', 'agravar', 'agredir', 'agregar', 'agrupar', 'aguantar', 'aguar', 'aguardar', 'agudizar', 'aguijar', 'agujerear', 'aguzar', 'aherir', 'ahogar', 'ahondar', 'ahorcar', 'ahorquillar', 'ahorrar', 'ahuchar', 'ahuecar', 'ahumar', 'ahuyentar', 'afianzar', 'afilar', 'afiliar', 'afinar', 'afirmar', 'afligir', 'aflojar', 'aflorar', 'afluir', 'aforar', 'aforrar', 'afrentar', 'afrontar', 'agachar', 'agarrar', 'agarrochar', 'agarrotar', 'agasajar', 'agilizar', 'agitar', 'aglomerar', 'agobiar', 'agonizar', 'agorar', 'agostar', 'agotar', 'agradar', 'agradecer', 'agrandar', 'agravar', 'agredir', 'agregar', 'agrupar', 'aguantar', 'aguar', 'aguardar', 'agudizar', 'aguijar', 'agujerear', 'aguzar', 'aherir', 'ahogar', 'ahondar', 'ahorcar', 'ahorquillar', 'ahorrar', 'ahuchar', 'ahuecar', 'ahumar', 'ahuyentar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'acariciar', 'acarrear', 'acartonar', 'acatar', 'acaudillar', 'acceder', 'accionar', 'acechar', 'aceitar', 'acelerar', 'acendrar', 'acensuar', 'acentuar', 'aceptar', 'acerar', 'acercar', 'acertar', 'acezar', 'achantar', 'achatar', 'achicar', 'achicharrar', 'aciberar', 'acicalar', 'acidificar', 'aclamar', 'aclarar', 'aclimatar', 'acobardar', 'acoger', 'acogotar', 'acolchar', 'acollar', 'acometer', 'acomodar', 'acompañar', 'acompasar', 'acomplejar', 'acongojar', 'aconsejar', 'acontecer', 'acopiar', 'acoplar', 'acordar', 'acortar', 'acosar', 'acostar', 'acostumbrar', 'acotar', 'acrecentar', 'acariciar', 'acarrear', 'acartonar', 'acatar', 'acaudillar', 'acceder', 'accionar', 'acechar', 'aceitar', 'acelerar', 'acendrar', 'acensuar', 'acentuar', 'aceptar', 'acerar', 'acercar', 'acertar', 'acezar', 'achantar', 'achatar', 'achicar', 'achicharrar', 'aciberar', 'acicalar', 'acidificar', 'aclamar', 'aclarar', 'aclimatar', 'acobardar', 'acoger', 'acogotar', 'acolchar', 'acollar', 'acometer', 'acomodar', 'acompañar', 'acompasar', 'acomplejar', 'acongojar', 'aconsejar', 'acontecer', 'acopiar', 'acoplar', 'acordar', 'acortar', 'acosar', 'acostar', 'acostumbrar', 'acotar', 'acrecentar', 'acariciar', 'acarrear', 'acartonar', 'acatar', 'acaudillar', 'acceder', 'accionar', 'acechar', 'aceitar', 'acelerar', 'acendrar', 'acensuar', 'acentuar', 'aceptar', 'acerar', 'acercar', 'acertar', 'acezar', 'achantar', 'achatar', 'achicar', 'achicharrar', 'aciberar', 'acicalar', 'acidificar', 'aclamar', 'aclarar', 'aclimatar', 'acobardar', 'acoger', 'acogotar', 'acolchar', 'acollar', 'acometer', 'acomodar', 'acompañar', 'acompasar', 'acomplejar', 'acongojar', 'aconsejar', 'acontecer', 'acopiar', 'acoplar', 'acordar', 'acortar', 'acosar', 'acostar', 'acostumbrar', 'acotar', 'acrecentar', 'acariciar', 

Process finished with exit code 0

CodePudding user response:

You made too many lists.

You put new url to list which has previous urls and later you visit all urls from this list - so finally you visit many times the same pages.

If you would print() to display visited urls then you could see it.

In every for a loop you visit pages

first : 1  
second: 1, 2
third : 1, 2, 3
next  : 1, 2, 3, 4
next  : 1, 2, 3, 4, 5
# ... 

You should use url directly in requests - without lists.

from bs4 import BeautifulSoup
import requests


url = "https://www.linguasorb.com/spanish/verbs/beginning-with-a"

response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')

all_pages = soup.find('ul', class_='pagination').find_all('a', href=True)

all_verbs = []

for page in all_pages:
    new_url = "https://www.linguasorb.com"   page['href']
    print('url:', new_url)
    
    new_response = requests.get(new_url)
    new_soup = BeautifulSoup(new_response.content, 'html.parser')
    
    verb_table = new_soup.find('table', class_='table-striped')
    findatag = verb_table.find_all('a', class_=None)
    for verb in findatag:
        all_verbs.append(verb.span.text)
        
print(all_verbs)
print(len(all_verbs), len(set(all_verbs)))

At the end I check len for list and set to see if there are duplicated words - to check if code works correctly.

Result: 454 words

['abalanzar', 'abandonar', 'abanicar', 'abaratar', 'abarcar', 'abarquillar', 'abarrotar', 'abastecer', 'abatir', 'abdicar', 'aberrar', 'abjurar', 'ablandar', 'abnegar', 'abofetear', 'abogar', 'abolir', 'abollar', 'abominar', 'abonar', 'abordar', 'aborrecer', 'abortar', 'abrasar', 'abrazar', 'abreviar', 'abrigar', 'abrillantar', 'abrir', 'abrochar', 'abrogar', 'abrumar', 'absolver', 'absorber', 'abstener', 'abstraer', 'abuchear', 'abultar', 'abundar', 'aburrir', 'abusar', 'acabar', 'acachetear', 'acaecer', 'acallar', 'acampar', 'acanalar', 'acantonar', 'acaparar', 'acardenalar', 'acariciar', 'acarrear', 'acartonar', 'acatar', 'acaudillar', 'acceder', 'accionar', 'acechar', 'aceitar', 'acelerar', 'acendrar', 'acensuar', 'acentuar', 'aceptar', 'acerar', 'acercar', 'acertar', 'acezar', 'achantar', 'achatar', 'achicar', 'achicharrar', 'aciberar', 'acicalar', 'acidificar', 'aclamar', 'aclarar', 'aclimatar', 'acobardar', 'acoger', 'acogotar', 'acolchar', 'acollar', 'acometer', 'acomodar', 'acompañar', 'acompasar', 'acomplejar', 'acongojar', 'aconsejar', 'acontecer', 'acopiar', 'acoplar', 'acordar', 'acortar', 'acosar', 'acostar', 'acostumbrar', 'acotar', 'acrecentar', 'acreditar', 'acribillar', 'acriminar', 'acrisolar', 'acromatizar', 'activar', 'actualizar', 'actuar', 'acuartelar', 'acuatizar', 'acuchillar', 'acuciar', 'acudir', 'acuitar', 'acumular', 'acunar', 'acuñar', 'acusar', 'adaptar', 'adecentar', 'adecuar', 'adelantar', 'adelgazar', 'aderezar', 'adeudar', 'adherir', 'adicionar', 'adiestrar', 'adivinar', 'adjetivar', 'adjudicar', 'adjuntar', 'administrar', 'admirar', 'admitir', 'adoctrinar', 'adolecer', 'adoptar', 'adorar', 'adormecer', 'adornar', 'adquirir', 'aduanar', 'aducir', 'adular', 'adulterar', 'advertir', 'afanar', 'afectar', 'afeitar', 'afianzar', 'afilar', 'afiliar', 'afinar', 'afirmar', 'afligir', 'aflojar', 'aflorar', 'afluir', 'aforar', 'aforrar', 'afrentar', 'afrontar', 'agachar', 'agarrar', 'agarrochar', 'agarrotar', 'agasajar', 'agilizar', 'agitar', 'aglomerar', 'agobiar', 'agonizar', 'agorar', 'agostar', 'agotar', 'agradar', 'agradecer', 'agrandar', 'agravar', 'agredir', 'agregar', 'agrupar', 'aguantar', 'aguar', 'aguardar', 'agudizar', 'aguijar', 'agujerear', 'aguzar', 'aherir', 'ahogar', 'ahondar', 'ahorcar', 'ahorquillar', 'ahorrar', 'ahuchar', 'ahuecar', 'ahumar', 'ahuyentar', 'airar', 'airear', 'aislar', 'ajar', 'ajardinar', 'ajuiciar', 'ajuntar', 'ajustar', 'ajusticiar', 'alabar', 'alabear', 'alambrar', 'alardear', 'alargar', 'alarmar', 'albergar', 'alborear', 'alborotar', 'alborozar', 'alcahuetear', 'alcanzar', 'alear', 'alebrestar', 'aleccionar', 'alegar', 'alegrar', 'alejar', 'alentar', 'alertar', 'aletargar', 'aletear', 'alienar', 'aligerar', 'alimentar', 'alinear', 'alisar', 'alistar', 'aliviar', 'allegar', 'almacenar', 'almonedar', 'almorzar', 'alojar', 'alongar', 'alquilar', 'alterar', 'altercar', 'alternar', 'alucinar', 'aludir', 'alumbrar', 'alzar', 'amadrinar', 'amagar', 'amalgamar', 'amamantar', 'amanecer', 'amar', 'amargar', 'amarrar', 'amartillar', 'amasar', 'amenazar', 'americanizar', 'ametrallar', 'amistar', 'amodorrar', 'amojonar', 'amolar', 'amoldar', 'amonestar', 'amontonar', 'amordazar', 'amorrar', 'amortiguar', 'amortizar', 'amotinar', 'amparar', 'ampliar', 'amplificar', 'amputar', 'amueblar', 'añadir', 'analizar', 'anclar', 'andar', 'añejar', 'anestesiar', 'anexar', 'anhelar', 'anidar', 'anieblar', 'animar', 'aniquilar', 'anochecer', 'añorar', 'anotar', 'ansiar', 'anteponer', 'anticipar', 'antojar', 'anublar', 'anudar', 'anular', 'anunciar', 'apaciguar', 'apadrinar', 'apagar', 'apalear', 'apañar', 'aparcar', 'aparear', 'aparecer', 'aparentar', 'apartar', 'apear', 'apenar', 'apestar', 'apetecer', 'apilar', 'aplastar', 'aplaudir', 'aplazar', 'aplicar', 'apocar', 'apoderar', 'aporrear', 'aportar', 'apostar', 'apostrofar', 'apoyar', 'apreciar', 'aprehender', 'aprender', 'aprestar', 'apresurar', 'apretar', 'aprobar', 'aprovechar', 'aproximar', 'apuñalar', 'apuntar', 'apurar', 'aquietar', 'arañar', 'arar', 'arbitrar', 'archivar', 'arder', 'arengar', 'argüir', 'argumentar', 'armar', 'armonizar', 'arraigar', 'arrancar', 'arrasar', 'arrastrar', 'arrebatar', 'arredrar', 'arreglar', 'arremeter', 'arrendar', 'arrepentir', 'arrestar', 'arriar', 'arribar', 'arriesgar', 'arrimar', 'arrodillar', 'arrojar', 'arrollar', 'arropar', 'arrugar', 'arruinar', 'arrullar', 'articular', 'asaltar', 'asar', 'ascender', 'asear', 'asediar', 'asegurar', 'asentar', 'asentir', 'asesinar', 'asesorar', 'aseverar', 'asfaltar', 'asfixiar', 'asignar', 'asimilar', 'asir', 'asistir', 'asociar', 'asolar', 'asolear', 'asomar', 'asombrar', 'aspirar', 'asquear', 'astillar', 'astringir', 'asumir', 'asustar', 'atacar', 'atañer', 'atar', 'atardecer', 'atascar', 'atemperar', 'atender', 'atentar', 'atenuar', 'aterrar', 'aterrizar', 'aterrorizar', 'atestar', 'atestiguar', 'atisbar', 'atizar', 'atontar', 'atormentar', 'atornillar', 'atracar', 'atraer', 'atrapar', 'atrasar', 'atravesar', 'atrever', 'atribuir', 'atrofiar', 'atropellar', 'aturdir', 'aullar', 'aumentar', 'aunar', 'autentificar', 'autocar', 'autorizar', 'auxiliar', 'avanzar', 'aventajar', 'aventar', 'aventurar', 'avergonzar', 'averiar', 'averiguar', 'avisar', 'avivar', 'ayudar', 'ayunar', 'azotar', 'azuzar']

454 454
  • Related