Получение имени и электронной почты с веб-страницы

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

Пожалуйста, помогите мне скопировать эти данные с веб-страницы.

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

Ниже приведен код, который я написал:

from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.keys import Keys
import time
from lxml import html
import requests
import xlwt

browser = webdriver.Firefox() # Get local session of firefox

# 0 wait until the pages are loaded
browser.implicitly_wait(3) # 3 secs should be enough. if not, increase it

browser.get("http://ae.bizdirlib.com/taxonomy/term/1493") # Load page
links = browser.find_elements_by_css_selector("h2 > a")

#print link
for link in links:
    link.send_keys(Keys.CONTROL + Keys.RETURN)
    link.send_keys(Keys.CONTROL + Keys.PAGE_UP)
#tree = html.fromstring(link.text)
    time.sleep(5)

companyNameElement = browser.find_elements_by_css_selector(".content.clearfix>div>fieldset>div>ul>li").text 
companyName = companyNameElement 
print companyNameElement

HTML-код приведен ниже

<div class="content">
<div id="node-946273" class="node node-country node-promoted node-full clearfix">
<div class="content clearfix">
<div itemtype="http://schema.org/Corporation" itemscope="">
<fieldset>
<legend>Company Information</legend>
<div style="width:100%;">
<div style="float:right; width:340px; vertical-align:top;">
<br/>
<ul>
<li>
<strong>Company Name</strong>
: 
<span itemprop="name">Sabbro - F.Z.C</span>
</li>
</ul>

когда я использую его, это дает мне ошибку, list' object has no attribute 'text', Может кто-нибудь помочь мне улучшить код и заставить его работать. Я вроде как застрял навсегда в этом вопросе.

1 ответ

companyNameElement = browser.find_elements_by_css_selector(".content.clearfix>div>fieldset>div>ul>li").text 
companyName = companyNameElement 
print companyNameElement

find_elements_by... возвращает список, вы можете получить доступ к первому элементу этого списка или использовать эквивалентный метод find_element_by..., который получит только первый элемент.

Другие вопросы по тегам