Как извлечь комментарии из всех ссылок на сайте Python - PullRequest
0 голосов
/ 13 января 2020

Я пытаюсь извлечь комментарии из нескольких форумов с сайта. У меня есть список ссылок, из которых я хочу извлечь комментарии. Когда я даю в коде одну ссылку вместо {i} (f "{i} / index {item} /")), код работает нормально, но с кодом ниже он дает пустой список.

data

    name                    Link
    a               https://www.f150forum.com/f118/2019-adding-ada...
    b               https://www.f150forum.com/f118/2018-adding-ada...
    c               https://www.f150forum.com/f118/adaptive-cruise...
    d               https://www.f150forum.com/f118/2018-platinum-s...
    e               https://www.f150forum.com/f118/adaptive-cruise...
    f               https://www.f150forum.com/f118/adaptive-cruise...

Мой код

link_url = []
username=[]
comments = []

for i in df['Link']:
    with requests.Session() as req:
        for item in range(1):
            r = req.get(
            f"{i}/index{item}/")
            soup = BeautifulSoup(r.text, 'html.parser')
            link_url.append(item)
            for item in soup.findAll('div',attrs={"class":"ism-true"}):
                result = [item.get_text(strip=True, separator=" ")]
                comments.append(result)
            for item in soup.findAll('a',attrs={"class":"bigusername"}):
                name = [item.get_text(strip=True, separator=" ")]
                username.append(name)


Можете ли вы помочь мне с этим. Заранее спасибо.

1 Ответ

0 голосов
/ 13 января 2020

ОК, я вижу, что ваши ссылки находятся в информационном фрейме, вы можете l oop их с помощью:

import pandas as pd
from io import StringIO

data = """
name,Link
a,https://www.f150forum.com/f118/2019-adding-ada...
b,https://www.f150forum.com/f118/2018-adding-ada...
c,https://www.f150forum.com/f118/adaptive-cruise...
d,https://www.f150forum.com/f118/2018-platinum-s...
e,https://www.f150forum.com/f118/adaptive-cruise...
"""
df = pd.read_csv(StringIO(data),sep=',')
for index, row in df.iterrows():
  print(row['Link'])

результат:

https://www.f150forum.com/f118/2019-adding-ada...
https://www.f150forum.com/f118/2018-adding-ada...
https://www.f150forum.com/f118/adaptive-cruise...
https://www.f150forum.com/f118/2018-platinum-s...
https://www.f150forum.com/f118/adaptive-cruise...

затем введите значение (ссылка ) внутри ваших запросов

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...