2015-10-27 6 views
1

Я хочу извлечь 2 аргумента (title и href) из <a> тег с страницы википедии.Извлечь 2 аргумента с веб-страницы

Я хочу, чтобы этот выход, например, (https://en.wikipedia.org/wiki/Riddley_Walker):

Canterbury Cathedral 
/wiki/Canterbury_Cathedral 

Код:

import os, re, lxml.html, urllib 

def extractplaces(hlink): 
    connection = urllib.urlopen(hlink) 
    places = {} 

    dom = lxml.html.fromstring(connection.read()) 

    for name in dom.xpath('//a/@title'): # select the url in href for all a tags(links) 
      print name 

В этом случае я только получить @title.

+0

Итак, в чем ваш вопрос? Вы сталкиваетесь с какими-либо ошибками? Если да, включите это в свой вопрос? –

+0

Я получаю только 1 аргумент, в этом случае только заголовок. Но я хочу заголовок 2 arg и href –

ответ

0

Вы должны получить элементы с тегом a, которые имеют атрибут заголовка (вместо того, чтобы непосредственно получать атрибут title) .И затем использовать .attrib для элемента, чтобы получить атрибуты вам нужно. Пример:

for name in dom.xpath('//a[@title]'): 
    print('title :',name.attrib['title']) 
    print('href :',name.attrib['href']) 
+0

Спасибо, это работает :) –