Find and slice problem

Juho Schultz juho.schultz at helsinki.fi
Wed Jan 18 10:25:24 CET 2006


jont999 at yahoo.co.uk wrote:
> Hi guys, been going around in circles with this so I hope you can help!
> 
> My current situation is I'm using Grinder and Jython to test pages, but
> the log on process is giving me some headaches. After entering the
> correct username and password, you then need to enter 3 characters from
> the security phrase. I'm attempting to read the HTML to find out with
> characters I need (e.g. 1st, 3rd and 6th char) then look up those
> values in the security phrase, but I'm getting stuck on the following
> function:
> 
> <code>
> 
> def getValue(page,delimEnd) :
>     EndVar = page.find(delimEnd)
>     thisVar =  page[EndVar-1:EndVar]
>     return thisVar
> 
> </code>
> 
> What I'm attemping to pass in is some multiline HTML(above) and pick up
> the proceeding character, but it seems to be reading from the end of
> the HTML instead!

page.find(delimEnd) returns -1 if delimEnd is not found, and after that 
you take page[-2:-1], i.e. second last character.

So you could add a test for that, if EndVar == -1 etc.
but I recommend using page.index(delimEnd) which raises an error if 
delimEnd is not found.



More information about the Python-list mailing list