Size: a a a

Сообщество Python Программистов

2020 December 17

SB

Student B. in Сообщество Python Программистов
Может конкурс организуем?
источник

SB

Student B. in Сообщество Python Программистов
Кто победит в конкурсе, тот лого и поставим
источник

E

Egor in Сообщество Python Программистов
Student B.
Может конкурс организуем?
Согласен
источник

E

Egor in Сообщество Python Программистов
Давай только на выхи
источник
2020 December 18

А

Александр in Сообщество Python Программистов
Здравствуйте!
Я решаю для себя одну задачу по парсингу с одного сайта товаров с определенными характеристиками, при этом на одной странице все работает отлично, но при переходе на другие страницы получается так, что парсятся те же самые товары с первой страницы.
Что я имею в виду. Предположим, есть несколько страниц с товарами (пусть будет 3), при этом:
на 1-й странице интересующих товаров – 2
на 2-й – 4,
на 3 – 1
Т.е. в итоговом файле должны быть 2+4+1=7 записей с разными товарами.
Но при выполнении кода с первой страницы в файл заносятся 2 товара, после чего еще 2 раза заносятся эти же 2 товара. Т.е. в итоговом файле получаю 6 записей, 4 последних из которых просто лишние копии товаров с первой страницы. Со 2-й и с 3-й старниц товары не добавляются. Я использовался такой код:
=========
def get_html(url, params=None):
   r = requests.get(url, headers=HEADERS, params=params)
   return r
 …….

     for page in range(1, pages_count + 1):
           print(f'Парсинг страницы {page} из {pages_count}...')
           html = get_html(URL, params={'page': page})
….
============
Я так понял, что проблема в следующем.
В моем случае адрес страниц выглядит следующим образом:
1-я страница:
«домен/c4035302/»
либо можно указать «домен/c4035302/page=1/», при этом перекинет на «домен/c4035302/»
2-я страница
«домен/c4035302/page=2/»
3-я страница
«домен/c4035302/page=3/»
Открыв документацию https://requests.readthedocs.io/en/master/user/quickstart/#make-a-request , вижу следующее: «…If you were constructing the URL by hand, this data would be given as key/value pairs in the URL after a question mark, e.g. httpbin.org/get?key=val….». Т.е., если я правильно понимаю, в моем случае код работал бы правильно, если  бы вместо адреса
«домен/c4035302/page=2/»
У страницы был бы адрес
«домен/c4035302/?page=2/»
(т.е. был знак вопроса перед ключом «page»). Правильно ли я определил причину проблемы и. если да, то, как правильно нужно сделать в моем случае?
Заранее спасибо за ответ (или ссылку, где можно почитать об этом).
источник

БГ

Бензофуран Гетероцик... in Сообщество Python Программистов
gr3nnka
Думаю классный подарок на дн
А при нагреве лого должно меняться на Си🌚👌
источник

БГ

Бензофуран Гетероцик... in Сообщество Python Программистов
Rud 356
Можно задизайнить что-то свое. Или же забахать маскота чата, кекб
Он уже есть🌚👌
источник

R3

Rud 356 in Сообщество Python Программистов
Бензофуран Гетероцикл
Он уже есть🌚👌
бля, Бензофуранотян🤔
источник

БГ

Бензофуран Гетероцик... in Сообщество Python Программистов
Он какой-то грустный
Надо улыбочку))
источник

БГ

Бензофуран Гетероцик... in Сообщество Python Программистов
И цвета не по канону
источник

БГ

Бензофуран Гетероцик... in Сообщество Python Программистов
Синий с жёлтым же
источник

$

$name$ in Сообщество Python Программистов
Бензофуран Гетероцикл
Он какой-то грустный
Надо улыбочку))
Он задумчивый
источник

g

gr3nnka in Сообщество Python Программистов
Бензофуран Гетероцикл
Синий с жёлтым же
Он и был такого цвета..Просто пока переварится..
источник

in Сообщество Python Программистов
Александр
Здравствуйте!
Я решаю для себя одну задачу по парсингу с одного сайта товаров с определенными характеристиками, при этом на одной странице все работает отлично, но при переходе на другие страницы получается так, что парсятся те же самые товары с первой страницы.
Что я имею в виду. Предположим, есть несколько страниц с товарами (пусть будет 3), при этом:
на 1-й странице интересующих товаров – 2
на 2-й – 4,
на 3 – 1
Т.е. в итоговом файле должны быть 2+4+1=7 записей с разными товарами.
Но при выполнении кода с первой страницы в файл заносятся 2 товара, после чего еще 2 раза заносятся эти же 2 товара. Т.е. в итоговом файле получаю 6 записей, 4 последних из которых просто лишние копии товаров с первой страницы. Со 2-й и с 3-й старниц товары не добавляются. Я использовался такой код:
=========
def get_html(url, params=None):
   r = requests.get(url, headers=HEADERS, params=params)
   return r
 …….

     for page in range(1, pages_count + 1):
           print(f'Парсинг страницы {page} из {pages_count}...')
           html = get_html(URL, params={'page': page})
….
============
Я так понял, что проблема в следующем.
В моем случае адрес страниц выглядит следующим образом:
1-я страница:
«домен/c4035302/»
либо можно указать «домен/c4035302/page=1/», при этом перекинет на «домен/c4035302/»
2-я страница
«домен/c4035302/page=2/»
3-я страница
«домен/c4035302/page=3/»
Открыв документацию https://requests.readthedocs.io/en/master/user/quickstart/#make-a-request , вижу следующее: «…If you were constructing the URL by hand, this data would be given as key/value pairs in the URL after a question mark, e.g. httpbin.org/get?key=val….». Т.е., если я правильно понимаю, в моем случае код работал бы правильно, если  бы вместо адреса
«домен/c4035302/page=2/»
У страницы был бы адрес
«домен/c4035302/?page=2/»
(т.е. был знак вопроса перед ключом «page»). Правильно ли я определил причину проблемы и. если да, то, как правильно нужно сделать в моем случае?
Заранее спасибо за ответ (или ссылку, где можно почитать об этом).
Если у тебя url строится без знака вопроса, просто самостоятельно составляй его.
Например:
url = f"http://example.com/page={page_n}"
источник

А

Александр in Сообщество Python Программистов
Если у тебя url строится без знака вопроса, просто самостоятельно составляй его.
Например:
url = f"http://example.com/page={page_n}"
Спасибо. Я уже об этом сам подумал (сижу с температурой и поздно уже - голова не варит) :). Извините за беспокойство, если что :)
источник

K

KarmaBot in Сообщество Python Программистов
Александр
Спасибо. Я уже об этом сам подумал (сижу с температурой и поздно уже - голова не варит) :). Извините за беспокойство, если что :)
Вы увеличили карму 🍉 до 1336.10 (+1.00)
источник

in Сообщество Python Программистов
Александр
Спасибо. Я уже об этом сам подумал (сижу с температурой и поздно уже - голова не варит) :). Извините за беспокойство, если что :)
Бывает
источник

KG

Kanni Grand in Сообщество Python Программистов
Бензофуран Гетероцикл
Ты же знаешь что у dict.get есть второй параметр?
И что есть ещё DefaultDict, в котором можно проставить значение которое будет выдаваться если запрашиваемого ключа в словаре нет?)
Да знаю, но не вижу в этом смысла) меня все устраивает) мне не нужно значение по умолчанию
источник

OV

Oleksander Velukuy in Сообщество Python Программистов
Переслано от Oleksander Velukuy
Hello)
Редактирую свое сообщение перед отправкой с помощью HTML, половина сообщения форматируется, остольное нет. Какие соображения?
источник

OV

Oleksander Velukuy in Сообщество Python Программистов
Переслано от Oleksander Velukuy
Фрагмент
источник