Форум сайта python.su
import requests from bs4 import BeautifulSoup import pandas as pd # url = 'https://www.tennisabstract.com/cgi-bin/wplayer.cgi?p=EliseMertens#career-splits-h' # headers = { "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 YaBrowser/23.1.1.1138 Yowser/2.5 Safari/537.36" } # # response1 = requests.get(url, headers=headers) # soup1 = BeautifulSoup(response1.content, 'html.parser')
Офлайн
Там надо качать вот этот файл, который указан в исходнике страницы
https://www.minorleaguesplits.com/tennisabstract/cgi-bin/frags/EliseMertens.js
Отредактировано py.user.next (Фев. 1, 2023 03:36:56)
Офлайн
py.user.next
Там надо качать вот этот файл, который указан в исходнике страницы
Офлайн
jbn238
подсказать каким способом скачать этот файл в Python
>>> import urllib.request >>> >>> url = 'https://www.minorleaguesplits.com/tennisabstract/cgi-bin/frags/EliseMertens.js' >>> >>> headers = { ... 'User-Agent': 'Firefox' ... } >>> >>> req = urllib.request.Request(url=url, headers=headers) >>> >>> with urllib.request.urlopen(req) as data: ... text = data.read().decode('utf-8') ... >>> text[:100] 'var player_frag = `<p><h1 id="recent-results-h">Recent Results <span style="font-si' >>>
jbn238Сохрани этот файл на диск просто и удаляй из него лишнее, заменяй в нём символы разные, чтобы эти данные стали валидным HTML-кодом. Когда сделаешь для файла на диске, тогда и объединишь эти два кода - код скачивания и код преобразования в HTML-данные.
и после преобразовать в html
>>> import re >>> >>> text = """var player_frag = `<p><h1 id="recent-results-h"> ... </h1>""" >>> >>> textnew1 = re.sub(r'^var[^`]*`', r'', text) >>> textnew2 = re.sub(r'^<([^>]+)>.*$', r'\g<0></\1>', textnew1) >>> >>> out = textnew2 >>> >>> text 'var player_frag = `<p><h1 id="recent-results-h"> ... </h1>' >>> textnew1 '<p><h1 id="recent-results-h"> ... </h1>' >>> textnew2 '<p><h1 id="recent-results-h"> ... </h1></p>' >>> >>> out '<p><h1 id="recent-results-h"> ... </h1></p>' >>>
Отредактировано py.user.next (Фев. 1, 2023 06:47:47)
Офлайн
py.user.nextСпасибо за помощь, буду что-то химичить.
Офлайн