Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
16 / 16 / 4
Регистрация: 19.04.2013
Сообщений: 1,194

[Python 3] Парсинг таблицы из html

01.08.2019, 18:53. Показов 1449. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
получил хтмл страницы:

Python
1
2
3
4
5
6
7
8
9
import urllib.request
 
fp = urllib.request.urlopen("https://www.globes.co.il/news/currencycontrols/currencyhistory.asp?Currency=USD&Month=1&Year=2000")
mybytes = fp.read()
 
mystr = mybytes.decode("windows-1255")
fp.close()
 
print(mystr)
на странице имеется таблица

Как мне выташить собержимое этой таблицы??
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.08.2019, 18:53
Ответы с готовыми решениями:

Парсинг HTML на Python 3 через http.parser
Нужно распарсить HTML-документ, чтобы вытащить из него определенные данные. Сделал так (html в...

Python парсинг, извлечение данных из таблицы
Здравствуйте, всем. Изучаю парсинг сайтов на практике с помощью BeautifulSoup. Допустим нашли...

Парсинг по порядку или парсинг до определенного тега
Доброго времени друзья! Подскажите пожалуйста, к примеру есть вот такой html код: <div...

3
115 / 23 / 3
Регистрация: 11.09.2017
Сообщений: 141
Записей в блоге: 4
02.08.2019, 08:39
UProger,
Python
1
2
3
4
5
6
7
8
9
from bs4 import BeautifulSoup as bs
import requests
 
url = 'https://www.globes.co.il/news/currencycontrols/currencyhistory.asp?Currency=USD&Month=1&Year=2000'
 
html = requests.get(url).text
soup = bs(html, 'lxml')
 
print(soup.find_all('tr'))
0
Эксперт Python
1356 / 653 / 207
Регистрация: 23.03.2014
Сообщений: 3,057
02.08.2019, 14:05
Пример :
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
from builtins import print
import requests
import pygame
import os
import sys
import binascii
from pygame.locals import *
import shutil
import bs4
from bs4 import BeautifulSoup
from urllib.request import urlopen
import time
from smtplib import SMTP_SSL
from email.mime.multipart import MIMEMultipart
from email.mime.base import MIMEBase
from email import  encoders
import lxml.html
import sqlite3
import urllib
url='http://htmlbook.ru/samhtml5/ustarevshie-tegi-i-atributy/'
def get_html(url):
    f = myhtml = urlopen(url)
    sp = BeautifulSoup(myhtml, "html.parser")
    lnk=sp.find_all("span",class_="tag")
    for l in lnk:
        l=str(l)
        l=l.replace('"',' ')
        l=l.replace("<span class= tag >",'')
        l=l.replace('</span>',' ')
        l=l.replace('&gt','')
        l=l.replace('&lt','')
        l=l.replace(';',' ')
        print(l)
 
if __name__ == '__main__':
    get_html(url)
0
16 / 16 / 4
Регистрация: 19.04.2013
Сообщений: 1,194
02.08.2019, 15:38  [ТС]
Я сделал так. Пока что устраивает!

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import urllib.request
from lxml import html
 
 
currencyList = ['USD', 'EUR', 'GBP', 'JPY', 'CAD', 'ZAR', 'CHF', 'NOK', 'AUD', 'JOD', 'CNY']
 
for curr in currencyList:
 
    fp = urllib.request.urlopen("https://www.globes.co.il/news/currencycontrols/currencyhistory.asp?Currency="+curr+"&Month=8&Year=2019")
    mybytes = fp.read()
 
    mystr = mybytes.decode("windows-1255")
    fp.close()
 
    tree = html.fromstring(mystr)
    table = tree.xpath('//table/tr/td')
 
    usdList = []
    usdDict = {}
 
    for row in table:
        if row.text and row.text != 'שער' and row.text != 'תאריך':
            usdList.append(row.text)
 
    for i in range(0, len(usdList)-1, 2):
        usdDict[usdList[i+1]] = usdList[i]
 
    print(usdDict)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.08.2019, 15:38
Помогаю со студенческими работами здесь

Ошибка HTML "No module named 'html.entities'; 'html' is not a package"
Добрый день. Подскажите, пожалуйста, следующий вопрос. У меня есть парсер сайта, который...

python-docx - как задать цвет отдельной ячейки в таблице используя html код
Доброго времени суток. Я сейчас пытаюсь выдать цвет отдельной ячейке в таблице в docx - документе. ...

Парсинг с помощью Python
from urllib2 import urlopen u =...

Парсинг с авторизацией в Python.
Я уже научился парсить веб-страницы с помощью Python очень неплохо получается. Вопрос такого плана...

Разбор (парсинг) выражения с комплексными числами в калькуляторе на Python
Здравствуйте. Пишу калькулятор на Python, который должен уметь работать с обычными и комплексными...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru