使用lxml / python解析论坛帖子

时间:2015-01-06 22:13:32

标签: python parsing web-scraping lxml lxml.html

当我使用下面的代码时,它会将一个div拆分为数组中的十五个项目。问题是我希望这个帖子作为数组中的一个项目。它可能是因为<br>标签而发生的,但我不确定如何解决它。

from lxml import html
import requests

page = requests.get('http://www.city-data.com/forum/economics/2056372-minimum-wage-vs-liveable-wage.html')

tree = html.fromstring(page.text)

details = tree.xpath('//div[contains(@id, "post_message_33583236")]/text()')

print len(details) #prints 15

1 个答案:

答案 0 :(得分:1)

使用xpath(非文本)查找元素并使用text_content()方法:

details = tree.xpath('.//div[contains(@id, "post_message_33583236")]')[0]
print(details.text_content())

打印:

With all the talk about raising the minimum wage, I think the real issue is that people are not getting a liveable wage anymore.  This applies to many skilled people too in which their job tries to pay them $10-13hr for $20-30hr type of work.

Not everyone deserves a raise at walmart or other low paying jobs.  I  think everyone should atleast prove themselves for 6 months to year then  start to gradually get a raise. You cant act a fool and get paid the same as people who work hard and try to move up in life. Even if walmart workers weren't making minimum wage and making  $11hr, you cant really do much making 22k a year other than live in a  cheap/borderline crime infested area

$11hr gets you about $1250 a month after taxes and health coverage at most jobs and ill list just the basic necessities in life
...