Как извлечь значение телефонной ссылки с внутренней веб-страницы с помощью Beautifulsoup?Python

Программы на Python
Ответить
Anonymous
 Как извлечь значение телефонной ссылки с внутренней веб-страницы с помощью Beautifulsoup?

Сообщение Anonymous »

Я пытаюсь написать сценарий, который сможет собирать информацию о телефонах и добавлять ее в фрейм данных. У меня есть такой набор данных с идентификатором клиента. При этом номера телефонов сохраняются внутри веб-страницы в виде ссылки.



Дата
Идентификатор
Комментарий




20240514 14 мая 22:00
R_111
Клиент не ответил



Я думаю, вы можете взять список идентификаторов клиентов из Dataframe и использовать библиотеку для уведомления номера телефона по идентификатору. Пример example.com/client/?id=111
Страница заказа (идентификатор) выглядит следующим образом:
%%html



id 111




Contact













Я хочу получить такой фрейм данных:


Идентификатор
Телефон

< /thead>


R_111
777777777



Я написал следующий код :
import requests
from bs4 import BeautifulSoup

def get_client_phone(client_id):
# url client
_url = f"https://example.com/client/?id={client_id}"

response = requests.get(_url, data=cfg.payload, headers=headers)

# Status
if response.status_code != 200:
print(f"Eror: {response.status_code}")
return None

# Parse page
soup = BeautifulSoup(response.text, 'html.parser')

# Find phone
phone_element = soup.find(id='phone')

if phone_element:
# Extract phone
phone_link = phone_element.find('a', href=True)
if phone_link:
phone_number = phone_link['href'].replace('tel:', '') # Remove 'tel:'
return phone_number
else:
print("The phone was not found")
return None

client_id = 'R_111'
phone_number = get_client_phone(client_id)

if phone_number:
print(f"Phone {client_id}: {phone_number}")
else:
print("Error")


Подробнее здесь: https://stackoverflow.com/questions/793 ... ing-beauti
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»