from bs4 import BeautifulSoup
import requests
def get_html():
r = requests.get('https://www.olx.ua/rabota/kherson/?search%5Bpaidads_listing%5D=1') #Менять ссылку тут
return r.text
soup = BeautifulSoup(get_html() , 'html.parser')
content = soup.find('div', class_='content')
right_col = content.find('div', class_='rel listHandler')
#print(right_col)
last_try = right_col.find_all('div', class_='space rel')
#print(last_try)
art_list = [] #Лист со статьями
i=0
for article in last_try:
# link = article.find('a', class_='marginright5 link linkWithHash detailsLink')
link = article.find('h3', class_='lheight22 margintop5')
art_list.append([link])
print(art_list)
Вот такой происходит вывод:
<h3 class="lheight22 margintop5">
<a class="marginright5 link linkWithHash detailsLink" href="https://www.olx.ua/obyavlenie/rabota-herson-sotrudnik-na-nepolnyy-rabochiy-den-IDuLtgg.html#ddff48e9be;promoted">
<strong>Работа Херсон Сотрудник на неполный рабочий день</strong>
</a>
</h3>], [None],[<h3 class="lheight22 margintop5">
<a class="marginright5 link linkWithHa.... и тд(повторений 15)
А в чем собственно заключается проблема: Откуда появляеться none? и как достать ТОЛЬКО сылку или только текст(strong)? через .text ловлю ошибку(скорее всего из-за вышеописанного появления None)
Т.е. не могу достать только сылку или текст. достается почему то весь кусок.
Не бросайтесь камнями) Буду признателен любой помощи.
Попробуйте так:
r = requests.get('https://www.olx.ua/rabota/kherson/?search%5Bpaidads_listing%5D=1')
#soup = BeautifulSoup(r.text, 'html.parser')
soup = BeautifulSoup(r.text, 'lxml')
res = [(x.attrs.get('href'), x.text) for x in soup.select('div.space.rel > h3 > a')]
Результат:
In [110]: res
Out[110]:
[('https://www.olx.ua/obyavlenie/rabota-herson-sotrudnik-na-nepolnyy-rabochiy-den-IDuLtgg.html#ddff48e9be;promoted',
'\nРабота Херсон Сотрудник на неполный рабочий день\n'),
('https://www.olx.ua/obyavlenie/predlagaem-vakansiyu-ofis-menedzhera-IDDpijB.html#ddff48e9be;promoted',
'\nПредлагаем вакансию Офис менеджера\n'),
('https://www.olx.ua/obyavlenie/trebuyutsya-prodavtsy-konsultanty-v-otdel-kosmetiki-IDDCD7W.html#ddff48e9be;promoted',
'\nТребуются Продавцы-консультанты в отдел косметики\n'),
('https://www.olx.ua/obyavlenie/voditeli-800-grn-za-smenu-v-hersone-IDBF5Rq.html#ddff48e9be;promoted',
'\nВодители - 800 грн за смену в Херсоне\n'),
('https://www.olx.ua/obyavlenie/rabota-na-letniy-sezon-hersonskaya-obl-zheleznyy-port-IDDEfSe.html#ddff48e9be;promoted',
'\nРабота на летний сезон (Херсонская обл., Железный порт).\n'),
('https://www.olx.ua/obyavlenie/biedronka-zh-m-semeynye-pary-12-zl-besplatnye-obedy-IDwIiIa.html#ddff48e9be;promoted',
'\nBIEDRONKA, Ж/М, Семейные пары.12-зл,+бесплатные обеды.\n'),
('https://www.olx.ua/obyavlenie/rabota-shvei-IDBmHnR.html#ddff48e9be;promoted',
'\nРабота швеи.\n'),
('https://www.olx.ua/obyavlenie/poznan-upakovka-salfetok-zewa-3200-zl-m-zh-pary-18-55-rabota-v-polshe-IDBxnop.html#ddff48e9be;promoted',
'\nПознань/Упаковка салфеток ZEWA/3200 зл/М,Ж,Пары 18-55/Работа в Польше\n'),
('https://www.olx.ua/obyavlenie/vizazhist-stilist-pedikyur-naraschivanie-nogtey-IDDGadd.html#ddff48e9be;promoted',
'\nВизажист, стилист, педикюр, наращивание ногтей\n'),
('https://www.olx.ua/obyavlenie/rabota-v-taksi-5565-na-svoem-avto-IDu9qVs.html#ddff48e9be;promoted',
'\nработа в такси 5565 на своем авто\n'),
('https://www.olx.ua/obyavlenie/franchayzing-taksi-994-v-vashem-oblastnom-tsentre-IDwQ2ei.html#ddff48e9be;promoted',
'\nфранчайзинг такси 994 в вашем областном центре\n'),
...
]
уважаемые форумчане, хочу задать вопрос о том, почему у меня код работает не так как я хочуУ меня есть документ HTML
Есть объект <div>Как поймать действие на мобильных устройствах, когда объект тянут вверх или вниз?
Необходимо задать в поле для ввода url префикс http:// и количество например 40 символовПри вводе в инпут должно быть так http://какаятоссылка
Имеется потоковый документ FlowDocument, содержащий в себе контейнер InlineUIContainer с таблицей DataGridДлина таблицы DataGrid превышает установленный фиксированный...