Python - объединить два цикла в массив - PullRequest
0 голосов
/ 28 октября 2019

Я новичок в Python и учусь на лету, пытаясь объединить знания из нескольких учебных пособий, чтобы решить мою проблему.

По сути, я пытаюсь очистить приведенный ниже веб-сайт, чтобы вытащить все свойства иих соответствующие страницы ссылаются на массив.

Веб-сайт: "https://www.accommodationforstudents.com/search-results?location=London&area=&beds=0&searchType=halls&price=undefined&limit=99"

Проблема в том, что когда я запускаю код, он перебирает ссылки для каждого свойства правильно, но имясобственности нет. Буду признателен за любую помощь.

С уважением

..........

import urllib.request
import requests
from bs4 import BeautifulSoup

url = "https://www.accommodationforstudents.com/search-results?location=London&area=&beds=0&searchType=halls&price=undefined&limit=99"

response = requests.get(url)
soup = BeautifulSoup(response.text, "html.parser")

page = soup.findAll('a', attrs={'class': "student-halls-card__link"})
property = soup.findAll('strong', attrs={'class': "student-halls-card__title"})

sites = []


for link in page:
    link.find('href', attrs={'class': "student-halls-card__link"})

    for name in property:
        name.find('href', attrs={'class': 'student-halls-card__title'})

    sites.append(name.text + " - " + "https://www.accommodationforstudents.com" + link.get('href'))

print(sites)

..... ........

Результат сокращен .. 'Felda House - https://www.accommodationforstudents.com/student-hall/407',' Felda House - https://www.accommodationforstudents.com/student-hall/1672', 'Felda House - https://www.accommodationforstudents.com/student-hall/3260',,. ...............]

1 Ответ

0 голосов
/ 28 октября 2019

Попробуйте это.

for link, name in zip(page, property):
...