1

I am using scrapy to axtract some data, last time I had a problem in the ligne of regx. the error message is like this one :

**File "ProjetVinNicolas3\spiders\nicolas_spider3.py", line 70, in parse_wine_page

classement, appelation, couleur = res.select('.//div[@class="pro_col_right"]/div[@class="pro_blk_trans"] div[@class="pro_blk_trans_titre"]/text()').re(r'^(\d\w+\s*Vin)\S\s+(\w+-\w+|\w+)\S\s+(\w+)\s*$')
exceptions.ValueError: need more than 0 values to unpack**

link program

4

2 回答 2

1

调用.re返回一个长度为零的元组。您不能使用长度不完全为 n 的序列对 n 个变量执行序列赋值。

于 2013-07-24T12:56:34.007 回答
0

问题在于:

classement, appelation, couleur  = res.select('.//div[@class="pro_col_right"]/div[@class="pro_blk_trans"]/div[@class="pro_blk_trans_titre"]/text()').re(r'^(\d\w+\s*Vin)\S\s+(\w+\-\w+|\w+)\S\s+(\w+)\s*$')

例如,选择返回[u'Lussac-Saint-Emilion, Rouge'],它与您的正则表达式不匹配。请参阅此页面http://www.nicolas.com/fr/18_409_9394_chateaubelairmagnum.htm - pro_blk_trans_titrediv 的内容不符合您要求的格式。

重新考虑你的正则表达式。

于 2013-07-24T13:20:13.950 回答