У меня есть программа очистки веб-страниц Python, которая получает все ссылки с определенных сайтов, и мне удалось распечатать имя домена каждой ссылки и пути после этого.Python web scraping - напечатать только часть url
Код:
import urllib
import re
import mechanize
from bs4 import BeautifulSoup
import urlparse
import cookielib
url = "http://www.sparkbrowser.com"
br = mechanize.Browser()
cj = cookielib.LWPCookieJar()
br.set_cookiejar(cj)
br.set_handle_robots(False)
br.set_handle_equiv(False)
br.set_handle_redirect(True)
br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1)
br.addheaders = [('User-agent', 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.1')]
page = br.open(url, timeout=5)
htmlcontent = page.read()
soup = BeautifulSoup(htmlcontent)
for link in br.links(text_regex=re.compile('^((?!IMG).)*$')):
newurl = urlparse.urljoin(link.base_url, link.url)
base = link.base_url
print base," - ",newurl
и получает меня результаты, как это:
http://www.sparkbrowser.com - http://www.sparkbrowser.com
http://www.sparkbrowser.com - http://sparkbrowser.com
http://www.sparkbrowser.com - http://www.sparkbrowser.com/index.php
http://www.sparkbrowser.com - http://www.sparkbrowser.com/download.php
http://www.sparkbrowser.com - http://www.sparkbrowser.com/about.php
http://www.sparkbrowser.com - http://www.sparkbrowser.com/features.php
http://www.sparkbrowser.com - http://www.sparkbrowser.com/spark.php
etc....
мне было интересно, как получить только sparkbrowser.com
или sparkbrowser
только по данному адресу?
Я знаю, как отделить имя домена, http://www.sparkbrowser.com
и путь, но я не знаю, если это возможно напечатать части URL, как я уже упоминал
Я пытался что-то с Regex, но я был не успешный.
Любая помощь приветствуется.
это будет использовать меня ... Большое вам спасибо! – dzordz