送信リンクのプレゼンスで入力されたURLを解析するスクリプトを作成しました。正確に必要なのは、入力されたURLが特定のタグの送信リンクのリストに存在するかどうかを確認することです。次に行います:
from lxml import html
import urllib2
url = 'http://businessinsider.com/'
Testurl = urllib2.urlopen('somequerryurl' +url).read()
tree = html.fromstring(Testurl)
#this check if specific <li class=""> id tag exists
Elements = tree.xpath('//div[@id="bd-cross"]//li[@class=""]')
try:
if len(Elements) > 0:
links = list(tree.xpath('//li[@class=""]//a/@href'))
if url in links:
print 'Yes'
else:
print 'No'
else:
print 'No'
except ValueError:
print 'Check your entered url!', url
たとえば、http://www.businessinsider.com/2007/11/blablablaを含むリストがあります。http://www.businessinsider.com/2012/news/blablaba。スクリプトは私に「いいえ」を与えます。URL(スクリプトに基づく)がリンクにないためですが、正しい「はい」です。正しい結果を得るために、同じドメインに属するURLがリストに存在するかどうかを確認する最良の方法は何ですか?