[Tutor] BeautifulSoup - getting cells without new line characters

Kent Johnson kent37 at tds.net
Fri Mar 31 17:43:52 CEST 2006


jonasmg at softhome.net wrote:
>  From a table, I want to get the cells for then only choose some of them. 
> 
> <table>
> <tr>
> <td>WY</td>
> <td>Wyo.</td>
> </tr>
> ...
> </table> 
> 
> Using: 
> 
> for row in table('tr'): print row.contents 
> 
>    ['\n', <td>WY</td>, '\n', <td>Wyo.</td>, '\n']
>    [...] 
> 
> I get a new line character between each cell. 
> 
> Is possible get them without those '\n'? 

Well, the newlines are in your data, so you need to strip them or ignore 
them somewhere.

You don't say what you are actually trying to do, maybe this is close:
   for row in table('tr'):
     cellText = [cell.string for cell in row('td')]
     print ' '.join(cellText)

Kent



More information about the Tutor mailing list