xpath获取script里面的内容建议使用正则表达式
import json
import re
from lxml import etree
# 1.获取html页面内容
xml_data = etree.HTML(r.text)
# 2.获取script标签体里面的内容
script = xml_data.xpath('/html/head/script[5]/text()')[0]
script的文本内容如下:
\r\n\tvar productStatus = \'50\';\r\n\tvar storageItemArray = \'[{"address":"中国","contect":"张三"}]\';\r\n\tvar operType = \'3\';\r\n
# 3.根据正则表达式来获取指定部分的内容
storageItem = re.findall('var storageItemArray = \\\'\[(.*)]\';\r',screpit)[0]
# 4.将上述的文本storageItem转换为json
storagejson = json.loads(storageItem)
print(storagejson['address'])