Bonjour à tous,

Je planche actuellement sur un petit script de détection de lien avec une structure bien définie dans une page HTML, j'utilise pour cela les expressions régulières de Python (regex). Je peux récupérer ainsi la partie qui se trouve dans le href de chaque lien pour n'obtenir que ce qui m'intéresse (l'url de la page)

Le seul problème que je rencontre c'est que je n'arrive pas à obtenir un maximum d'occurences trouvées dans mon échantillon. En gros j'ai l'impression qu'il est en mode "flemmard".

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
def analyseLinks(text):
    # --------------------------
    #Analyse des liens vers des pages
    # --------------------------
    m = o.match(text)
    try:
        reslt = m.group(1)
    except:
        reslt = -1
    return [ reslt ]
 
# Moteur des détections
o = re.compile(r'^.*(?:<a.* href=\'(\./pagenb:index[0-9]{1,4}-[0-9]{1,4})\'.*>(?:.{3,})</a>.{1,4}){1,}.*$')
 
navigpages = "<font size='1'>Pages: </font><a href='./pagenb:index204-45'>précédente</a> - <a href='./pagenb:index204-0'><b>1</b></a> <a href='./pagenb:index204-5'><b>2</b></a> <a href='./pagenb:index204-10'><b>3</b></a> <a href='./pagenb:index204-15'><b>4</b></a> <a href='./pagenb:index204-20'><b>5</b></a> <a href='./pagenb:index204-25'><b>6</b></a> <a href='./pagenb:index204-30'><b>7</b></a> <a href='./pagenb:index204-35'><b>8</b></a> <a href='./pagenb:index204-40'><b>9</b></a> <a href='./pagenb:index204-45'><b>10</b></a> <font size='1' face='verdana' color='red'><b>11</b></font> <a href='./pagenb:index204-55'><b>12</b></a> - <a href='./pagenb:index204-55'>suivante</a>"
 
analyseLR  = analyseLinks(navigpages)
print "result2: %s" % (analyseLR)
La variable navigpages qui est mon échantillon d'analyse n'est composé que d'une ligne.

Il ne me trouve qu'une seule occurence alors qu'il y en a au moins une dizaine, comment faire alors pour qu'il les trouvent toutes ? Je ne sais pas comment m'y prendre,
merci d'avance !

Jamesb.