Как лучше автоматизировать программу, которая требует нескольких программ и URL-адресов - PullRequest
0 голосов
/ 19 сентября 2019

Я пытаюсь собрать определенные данные с веб-сайта 82games.com.В настоящее время у меня есть решение, использующее beautifulsoup, awk и sed, но оно не идеально.Для начала я хочу иметь возможность перебирать несколько html-страниц и запускать свою программу на всех из них итеративно, а не повторять процесс, например.ввод нового URL и нового файла destination.txt для каждой страницы.

Python, BS4, awk, sed.

import requests
import re
from bs4 import BeautifulSoup

def function():
    page = requests.get('http://www.82games.com/1819/18ATL16.HTM#bypos')

    soup = BeautifulSoup(page.text, 'html.parser')
    cleantext = BeautifulSoup(page.text, "html.parser").text
    text = str(soup)
    print(type(text))
    print(str(cleantext))
    ans = remove(text)
    return ans

def remove(string): 
    return "".join(string.split())

if __name__ == '__main__':
    function()

Код драйвера (в bash)

python nba_stats.py |awk NF> JohnCollinsAH2.txt

sed -i '1, / Production By Postion / d' JohnCollinsAH2.txt

1 Ответ

0 голосов
/ 19 сентября 2019

Посмотрите на Scrapy .Это движок веб-паука, который позволяет вам переходить по ссылкам и выводить структурированные данные.Он интегрируется с BeautifulSoup , поэтому вы сможете сохранить логику анализа.

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