2

我正在使用scrapy抓取网页。

现在脚本标签中有一些数据。我使用 xpath 获得了脚本标签中的所有数据,看起来像这样。

 <script>
 some data

 abc.xyz=[["mohit","gupta","456123"]];

 some data
 </script>

我想要数据,abc.xyz但我无法这样做。

4

1 回答 1

1

您可以使用正则表达式abc.xyz=(.*?);来提取变量值。此外,如果你想从中创建一个 python 列表,你可以使用literal_eval()

from ast import literal_eval
import re

text = """<script>
 some data

 abc.xyz=[["mohit","gupta","456123"]];

 some data
 </script>"""

value = re.search('abc.xyz=(.*?);', text).group(1)
print value, type(value)

value = literal_eval(value)
print value, type(value)

印刷:

[["mohit","gupta","456123"]] <type 'str'>
[['mohit', 'gupta', '456123']] <type 'list'>
于 2013-09-19T07:26:00.350 回答