Я новичок в написании своего первого скриптового скрипта, пытающегося извлечь название компании, номер телефона и адрес электронной почты со следующей страницы .
Пока мой скрипт успешно вытаскивает имяи номер телефона, но я застреваю при извлечении электронной почты, которая вложена в объект скрипта.Мои последние две попытки были связаны с использованием регулярных выражений и, когда это не удалось, функцией разделения, которая возвращает ошибку, упомянутую в заголовке.
Скрипт:
import re
import requests
from urllib.request import urlopen
from bs4 import BeautifulSoup
url1 = "http://pcoc.officialbuyersguide.net/Listing?MDSID=CPC-1210"
html = urlopen(url1)
soup = BeautifulSoup(html,'html.parser')
for company_name in soup.find_all(class_='ListingPageNameAddress NONE'):
print(company_name.find('h1').text)
for phone in soup.find_all(class_='ListingPageNameAddress NONE'):
print(phone.find(class_='Disappear').text)
for email in soup.findAll(class_='ListingPageNameAddress NONE'):
print(email.find('script').text)
print(email.split('LinkValue: "')[1].split('"')[0])
print(re.findall(r"([\w\._]+\@([\w_]+\\.)+[a-zA-Z]+)", soup))
Ошибка:
TypeError Traceback (most recent call last)
<ipython-input-20-ace5e5106ea7> in <module>
1 for email in soup.findAll(class_='ListingPageNameAddress NONE'):
2 print(email.find('script').text)
----> 3 print(email.split('LinkValue: "')[1].split('"')[0])
4 print(re.findall(r"([\w\._]+\@([\w_]+\\.)+[a-zA-Z]+)", soup))
TypeError: 'NoneType' object is not callable
HTML внутри «скрипта», из которого я пытаюсь извлечь:
EMLink('com','aol','mikemhnam','<div class="emailgraphic"><img style="position: relative; top: 3px;" src="https://www.naylornetwork.com/EMailProtector/text-gif.aspx?sx=com&nx=mikemhnam&dx=aol&size=9&color=034af3&underline=yes" border=0></div>','pcoc.officialbuyersguide.net Inquiry','onClick=\'$.get("TrackLinkClick", { LinkType: "Email", LinkValue: "mikemhnam@aol.com", MDSID: "CPC-1210", AdListingID: "" });\'')