使用链接Python解析文件

时间:2019-02-26 20:56:15

标签: python regex parsing

我有一个必须解析的文件,该文件包含很多链接,以及其外观示例:

  <hm><w syst="whatrudoing" please="http://facebook.com.u/qwe-     
  pls/facebook?funn=wordlis&sys;sys;colorsdif_id=11908675">colors</p></hm>

 <hm><w syst="whatrudoing" please="http://facebook.com.u/qwe-
  pls/facebook?funn=wordlis&sys;sys;colorsdif_id=45103481">yelloW</p></hm>

  <td>I have a dream, and it is all good 2</hm>

 <hm><w syst="whatrudoing" please="http://facebook.com.u/qwe-    
  pls/facebook?funn=wordlis&sys;sys;colorsdif_id=40984930">orangE</p></hm>

 <hm><w syst="whatrudoing" please="http://facebook.com.u/qwe-
  pls/facebook?funn=wordlis&sys;sys;colorsdif_id=90648361">pinK</p></hm>

我只需要保留> colors <位置的单词,所以我也想要> yelloW <,> orangE <和> pinK <。

在此示例中,它们之间的通用表达式将是除数字(所有链接中的id是不同的数字)和单词以外的所有链接。

找到所有我想将它们保存在字典中的单词之后,就将第一个元素用作键,将其他元素用作键,所以最终结果将是:

   d = {"colors": ["yelloW", "orangE", "pinK"]}

1 个答案:

答案 0 :(得分:0)

您可以尝试以下操作:

import re
re.findall(r"http://[^>]+>(\w+)",ree)

位置:

  • [^>] +-获取除>
  • 以外的任何字符
  • \ w +-收到任何字母
  • (..)-返回括号之间的组

Python字典不支持相同的键。您可以查看this question