python lxml解析html

Yeb*_*ach 1 python lxml html-table html-parsing

我正在尝试解析一个HTML文档.它包含几个表.我能够找到正确的表并从中获取数据

for cell in doc.xpath('//table[@class="CE_13"]')[0]:
    for a in cell:
        print a.text_content()
Run Code Online (Sandbox Code Playgroud)

表由6列组成.我只需要第五列.是否有可能获得dict中的所有值(如果:{ column1 : values_of_clm1 ;column2 : values_of_clmn2; .....})如何?然后读取表单dict或者您是否建议使用不同的解决方案?

ren*_*ard 6

这篇文章对你尝试做的事情很有用:python,lxml和xpath - html表解析.

然后阅读你的词典,你可以选择不同的策略.如果您确切知道什么是密钥,那么您可以直接通过密钥访问您的值:my_dict['a_key_string']

否则你可以这样迭代你的字典:

for key,val in my_dict.items():
   do_stuff(key,val)
Run Code Online (Sandbox Code Playgroud)

编辑

获取所有第5个td元素:

tds = root.xpath("//table//td[position()=5]")
Run Code Online (Sandbox Code Playgroud)

迭代td元素:

for td in tds:
    print "tag %s" % td.tag
    print "inner %s" % td.text
Run Code Online (Sandbox Code Playgroud)

基本上你不需要这里的字典,因为你只能直接获得组成你的第5个表列的td元素