{ "info": { "author": "zlyuan", "author_email": "1277260932@qq.com", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Intended Audience :: Developers", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# \u64cd\u4f5c\u66f4\u65b9\u4fbf\u7684xpath\n\n### \u4f7f\u7528\u65b9\u6cd5\u7c7b\u4f3c\u4e8eBeautiful Soup4, \u4f46\u662f\u6bd4\u4ed6\u66f4\u5feb\u901f, \u529f\u80fd\u66f4\u5f3a\u5927\n\n```python\nimport zxpath2\n\ndef find(name=None, class_=None, text=None, deep=True, index: None or int = None, **attrs):\n '''\n \u67e5\u8be2\u8282\u70b9\n :param name: \u5143\u7d20\u540d, \u5982\u679c\u4e0d\u662fstr\u7c7b\u578b\u5219\u67e5\u627e\u6240\u6709\u5143\u7d20\n :param class_: class\u5c5e\u6027\n :param text: \u6587\u672c\u503c\n :param deep: \u662f\u5426\u6df1\u5ea6\u67e5\u8be2\u5b59\u8282\u70b9\n :param index: \u53d6\u51fa\u7b2c\u51e0\u4e2a\u7ed3\u679c\n :param attrs: \u5339\u914d\u5143\u7d20\u7684\u5c5e\u6027\u503c, \u5c5e\u6027\u503c\u4e3aTrue, \u8868\u793a\u5b58\u5728\u8be5\u5c5e\u6027\u7684\u5143\u7d20, \u5c5e\u6027\u540d\u524d\u52a0\u4e0b\u5212\u7ebf_\u8868\u793a\u5426\u5b9a, \u5982_id=True\u8868\u793a\u4e0d\u5b58\u5728id\u7684\u5143\u7d20, _id='t1'\u8868\u793aid\u4e0d\u662ft1\u7684\u5143\u7d20\n :return: index\u4e3a\u6574\u6570\u65f6: \u6210\u529f\u8fd4\u56deElement\u5bf9\u8c61, \u5931\u8d25\u8fd4\u56deNone, index\u4e3a\u5176\u4ed6:\u8fd4\u56de\u5305\u542b_Element\u5bf9\u8c61\u7684\u5217\u8868\n '''\n pass\n\nzx = zxpath2.load('etree\u5bf9\u8c61\u6216\u8005html\u6e90\u7801') #\u52a0\u8f7d\n\nzx.find('div', id='content') #\u67e5\u8be2id\u4e3a'content'\u7684\u6240\u6709div, \u8fd4\u56de\u5305\u542b_Element\u5bf9\u8c61\u7684\u5217\u8868\nzx.find('div', id=False, index=0) #\u67e5\u8be2\u4e0d\u5b58\u5728id\u7684\u7b2c\u4e00\u4e2adiv, \u8fd4\u56de_Element\u5bf9\u8c61\nzx.find('div', _id='content', deep=False) #\u5728\u5f53\u524d\u8282\u70b9\u4e2d\u67e5\u8be2id\u4e0d\u4e3a'content'\u7684\u6240\u6709div, \u8fd4\u56de\u5305\u542b_Element\u5bf9\u8c61\u7684\u5217\u8868\nzx.find('div', id='content', index=-1) #\u67e5\u8be2id\u4e3a'content'\u7684\u6700\u540e\u4e00\u4e2adiv, \u8fd4\u56de_Element\u5bf9\u8c61\n\nzx('div', id='content') #_Element\u5bf9\u8c61\u53ef\u4ee5\u4f5c\u4e3a\u51fd\u6570\u540d\u76f4\u63a5\u8c03\u7528find\n```\n\n### Element\u5bf9\u8c61\u5c5e\u6027\n\u5c5e\u6027\u540d|\u8fd4\u56de\u7c7b\u578b|\u63cf\u8ff0\n--|:--:|--\nname | str | \u8fd4\u56de\u5143\u7d20\u8282\u70b9\u7684\u6807\u7b7e\u540d, \u5982 a, div, h1, p, span\u7b49\nbase | etree.\\_Element\u5bf9\u8c61 | \u8fd4\u56de\u539f\u59cb\u7684etree.\\_Element\nid | int | \u8fd4\u56debase\u7684id\u503c\nis_element | bool | \u8fd4\u56de\u662f\u5426\u4e3a\u4e00\u4e2aelement\u8282\u70b9, \u59cb\u7ec8\u8fd4\u56deTrue\nis_node_element | bool | \u8fd4\u56de\u662f\u5426\u4e3a\u4e00\u4e2a\u5143\u7d20\u8282\u70b9, \u59cb\u7ec8\u8fd4\u56deTrue\nis_text_element | bool | \u8fd4\u56de\u662f\u5426\u4e3a\u4e00\u4e2a\u6587\u672c\u8282\u70b9, \u59cb\u7ec8\u8fd4\u56deFalse\nis_comment | bool | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u662f\u5426\u4e3a\u6ce8\u91ca\u8282\u70b9\nstring | str | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u4e0b\u6240\u6709\u7684\u6587\u672c\u8fde\u63a5\u5728\u4e00\u8d77\u7684\u5b57\u7b26\u4e32, \u6ca1\u6709\u6587\u672c\u8fd4\u56de\u7a7a\u5b57\u7b26\u4e32\ntext | str | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u4e0b\u7684\u7b2c\u4e00\u4e2a\u6587\u672c, \u6ca1\u6709\u6587\u672c\u8fd4\u56de\u7a7a\u5b57\u7b26\u4e32\ntail | str | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u7684\u5c3e\u5df4\u6587\u672c, \u6ca1\u6709\u6587\u672c\u8fd4\u56de\u7a7a\u5b57\u7b26\u4e32\nhtml | str | \u5c06\u5f53\u524d\u8282\u70b9\u5e8f\u5217\u5316\u4e3ahtml\u6e90\u7801\nattrs | dict | \u83b7\u53d6\u5f53\u524d\u8282\u70b9\u7684\u6240\u6709\u5c5e\u6027\npre | | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u7684\u4e4b\u524d\u7684\u4e00\u4e2a\u540c\u7ea7\u5bf9\u8c61, \u6ca1\u6709\u65f6\u8fd4\u56deNone\npres | Element\\_List | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u4e4b\u524d\u7684\u6240\u6709\u540c\u7ea7\u5bf9\u8c61, \u6ca1\u6709\u65f6\u8fd4\u56de\u7a7a\u5217\u8868\npre_node | | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u7684\u4e4b\u524d\u7684\u4e00\u4e2a\u540c\u7ea7\u5143\u7d20\u8282\u70b9, \u6ca1\u6709\u65f6\u8fd4\u56deNone\npres_node | Element\\_List | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u4e4b\u524d\u7684\u6240\u6709\u540c\u7ea7\u5143\u7d20\u8282\u70b9, \u6ca1\u6709\u65f6\u8fd4\u56de\u7a7a\u5217\u8868\nnext | | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u7684\u4e4b\u540e\u7684\u4e00\u4e2a\u540c\u7ea7\u5bf9\u8c61, \u6ca1\u6709\u65f6\u8fd4\u56deNone\nnexts | Element\\_List | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u4e4b\u540e\u7684\u6240\u6709\u540c\u7ea7\u5bf9\u8c61, \u6ca1\u6709\u65f6\u8fd4\u56de\u7a7a\u5217\u8868\nnext_node | | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u7684\u4e4b\u540e\u7684\u4e00\u4e2a\u540c\u7ea7\u5143\u7d20\u8282\u70b9, \u6ca1\u6709\u65f6\u8fd4\u56deNone\nnexts_node | Element\\_List | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u4e4b\u540e\u7684\u6240\u6709\u540c\u7ea7\u5143\u7d20\u8282\u70b9, \u6ca1\u6709\u65f6\u8fd4\u56de\u7a7a\u5217\u8868\nchild | | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u7684\u7b2c\u4e00\u4e2a\u5b50\u5bf9\u8c61, \u6ca1\u6709\u65f6\u8fd4\u56deNone\nchilds | Element\\_List | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u7684\u6240\u6709\u5b50\u5bf9\u8c61, \u6ca1\u6709\u65f6\u8fd4\u56de\u7a7a\u5217\u8868\nchild_node | | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u7684\u7b2c\u4e00\u4e2a\u5b50\u5143\u7d20\u8282\u70b9, \u6ca1\u6709\u65f6\u8fd4\u56deNone\nchilds_node | Element\\_List | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u7684\u6240\u6709\u5b50\u5143\u7d20\u8282\u70b9, \u6ca1\u6709\u65f6\u8fd4\u56de\u7a7a\u5217\u8868\nparent | Element | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u7684\u7236\u8282\u70b9, \u6ca1\u6709\u65f6\u8fd4\u56deNone\nancestor | Element | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u7684\u7b2c\u4e00\u4e2a\u7236\u8f88, \u6ca1\u6709\u65f6\u8fd4\u56deNone\nancestors | Element\\_List | \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u7684\u6240\u6709\u7236\u8f88, \u6ca1\u6709\u65f6\u8fd4\u56de\u7a7a\u5217\u8868\n\n### Element.xpath\u65b9\u6cd5\n> \u4f7f\u7528\u539f\u751fxpath\u4ee3\u7801\u67e5\u8be2\n\n\u53c2\u6570\u540d|\u6570\u636e\u7c7b\u578b|\u9ed8\u8ba4\u503c|\u63cf\u8ff0\n--|:--:|:--:|--\ncode | str | | \u539f\u751fxpath\u4ee3\u7801, \u5982 //div/a, //div/h1/text()\nindex | None
int | None |
  • None: \u8fd4\u56de\u4e00\u4e2a\u5217\u8868, \u5305\u542b\u6240\u6709\u7b26\u5408\u6761\u4ef6\u7684\u8282\u70b9
  • int: \u8fd4\u56de\u6307\u5b9a\u4f4d\u7f6e(\u4ece0\u5f00\u59cb)\u7684\u4e00\u4e2a\u8282\u70b9, \u7d22\u5f15\u662f\u5b89\u5168\u7684, \u4e0d\u5b58\u5728\u7684\u7d22\u5f15\u8fd4\u56deNone
  • \n\n### Element.css\u65b9\u6cd5\n> \u4f7f\u7528\u539f\u751fcss\u4ee3\u7801\u67e5\u8be2\n\n\u53c2\u6570\u540d|\u6570\u636e\u7c7b\u578b|\u9ed8\u8ba4\u503c|\u63cf\u8ff0\n--|:--:|:--:|--\ncode | str | | \u539f\u751fcss\u4ee3\u7801, \u5982 .class1, div>a\nindex | None
    int | None |
  • None: \u8fd4\u56de\u4e00\u4e2a\u5217\u8868, \u5305\u542b\u6240\u6709\u7b26\u5408\u6761\u4ef6\u7684\u8282\u70b9
  • int: \u8fd4\u56de\u6307\u5b9a\u4f4d\u7f6e(\u4ece0\u5f00\u59cb)\u7684\u4e00\u4e2a\u8282\u70b9, \u7d22\u5f15\u662f\u5b89\u5168\u7684, \u4e0d\u5b58\u5728\u7684\u7d22\u5f15\u8fd4\u56deNone
  • \n\n### Element.child\\_in\u65b9\u6cd5\n> \u63a5\u6536\u4e00\u4e2a\u53c2\u6570, \u8fd4\u56de\u5f53\u524d\u8282\u70b9\u662f\u5426\u4e3a\u4f20\u5165\u5bf9\u8c61\u7684\u5b50\u8282\u70b9\n\n### Element.remove\\_attr\u65b9\u6cd5\n> \u4ece\u8282\u70b9\u4e2d\u5220\u9664\u5f53\u524d\u8282\u70b9\u7684\u67d0\u4e00\u4e2a\u5c5e\u6027, \u65e0\u6b64\u5c5e\u6027\u5219\u5ffd\u7565\n\n### Element.remove\\_all\\_attr\u65b9\u6cd5\n> \u5220\u9664\u5f53\u524d\u8282\u70b9\u7684\u6240\u6709\u5c5e\u6027\n\n### Element.remove\\_self\u65b9\u6cd5\n> \u4ece\u8282\u70b9\u6811\u4e2d\u5220\u9664\u5f53\u524d\u8282\u70b9\n\n### Element.remove\u65b9\u6cd5\n> \u63a5\u6536\u4e00\u4e2a\u53c2\u6570, \u4ece\u8282\u70b9\u6811\u4e2d\u5220\u9664\u5f53\u524d\u8282\u70b9\u7684\u4e00\u4e2a\u5b50\u8282\u70b9, \u5982\u679c\u4f20\u5165\u7684\u5bf9\u8c61\u4e0d\u662f\u5f53\u524d\u8282\u70b9\u7684\u5b50\u8282\u70b9\u4f1a\u62a5\u9519, \u4e0d\u80fd\u5220\u9664\u6587\u672c\u8282\u70b9\n\n### Element.change_text\u65b9\u6cd5\n> \u4fee\u6539\u5f53\u524d\u8282\u70b9\u7684\u4e3b\u8981\u6587\u672c\n\n### Element.change_tail\u65b9\u6cd5\n> \u4fee\u6539\u5f53\u524d\u8282\u70b9\u7684\u5c3e\u5df4\u6587\u672c\n\n### Element.find\u65b9\u6cd5\n> \u67e5\u8be2\u5f53\u524d\u8282\u70b9\u4e0b\u7684\u5bf9\u8c61\n\n\u53c2\u6570\u540d|\u6570\u636e\u7c7b\u578b|\u9ed8\u8ba4\u503c|\u63cf\u8ff0\n--|:--:|:--:|--\nname | str | None | \u8981\u67e5\u627e\u7684\u5bf9\u8c61\u540d, \u8868\u793ahtml\u4e2d\u7684\u6807\u7b7e\u540d, \u5982div,a,li, \u5982\u679c\u8bbe\u4e3aNone\u6216\u7a7a\u5b57\u7b26\u4e32\u8868\u793a\u67e5\u8be2\u6240\u6709\u5bf9\u8c61\nclass\\_ | str | None | \u8981\u67e5\u627e\u5143\u7d20\u7684\u7c7b\u540d
    None: \u4e0d\u5173\u5fc3class
    True: \u4efb\u4f55\u5b58\u5728class\u5c5e\u6027\u7684\u5143\u7d20
    False: \u4e0d\u5b58\u5728class\u5c5e\u6027\u7684\u5143\u7d20
    str: class\u5c5e\u6027\u4e3a\u6307\u5b9a\u5b57\u7b26\u4e32\u7684\u5143\u7d20\ntext | str | None | \u8981\u67e5\u627e\u5bf9\u8c61\u7684\u6587\u672c\u503c
    None: \u4e0d\u5173\u5fc3\u6587\u672c
    True: \u4efb\u4f55\u5b58\u5728\u6587\u672c\u7684\u5143\u7d20
    False: \u6ca1\u6709\u6587\u672c\u7684\u5143\u7d20
    str: \u6587\u672c\u4e3a\u6307\u5b9a\u5b57\u7b26\u4e32\u7684\u5143\u7d20\ndeep | bool | True | \u662f\u5426\u6df1\u5ea6\u67e5\u8be2
    True: \u904d\u5386\u641c\u7d22\u5f53\u524d\u8282\u70b9\u4e0b\u7684\u6240\u6709\u5bf9\u8c61
    False: \u53ea\u641c\u7d22\u5f53\u524d\u8282\u70b9\u4e0b\u7684\u5b50\u5bf9\u8c61\nindex | int | None |
  • None: \u8fd4\u56de\u4e00\u4e2a\u5217\u8868, \u5305\u542b\u6240\u6709\u7b26\u5408\u6761\u4ef6\u7684\u8282\u70b9
  • int: \u8fd4\u56de\u6307\u5b9a\u4f4d\u7f6e(\u4ece0\u5f00\u59cb)\u7684\u4e00\u4e2a\u8282\u70b9
  • \n\u5176\u4ed6\u5c5e\u6027\u540d | str | | \u4f60\u4e5f\u53ef\u4ee5\u9009\u62e9\u4f7f\u7528html\u7684\u5176\u4ed6\u5c5e\u6027\u540d, \u5982href, src, style\u7b49\n\u5e26\u524d\u4e0b\u5212\u7ebf\u7684\u5c5e\u6027\u540d | str | | \u5982\u679c\u5c5e\u6027\u540d\u4e4b\u524d\u5e26\u4e86\u4e0b\u5212\u7ebf, \u5982 \\_class\\_, \\_text, \\_href, \\_src\u7b49, \u8868\u793a\u641c\u7d22\u7684\u5143\u7d20\u7684\u8fd9\u4e2a\u5c5e\u6027\u4e0d\u4e3a\u8bbe\u7f6e\u7684\u503c
    \u5982 \\_text='123' \u8868\u793a\u5143\u7d20\u7684\u6587\u672c\u4e0d\u7b49\u4e8e123, \\_src=True \u8868\u793a\u5143\u7d20\u6ca1\u6709src\u5c5e\u6027, \u5f53\u7136\u4e0d\u63a8\u8350 \\_\u5c5e\u6027\u540d=True\u8fd9\u79cd\u65b9\u5f0f, \u4f60\u5e94\u8be5\u4f7f\u7528 \u5c5e\u6027\u540d=False\n\n### Element.\u5176\u4ed6\u67e5\u627e\u65b9\u6cd5\n> \u8fd9\u4e9b\u65b9\u6cd5\u7684\u5c5e\u6027\u53c2\u8003find\u65b9\u6cd5\n\n\u65b9\u6cd5\u540d | \u63cf\u8ff0\n--|--\nfind_pre | \u67e5\u627e\u5f53\u524d\u8282\u70b9\u4e4b\u524d\u7684\u540c\u7ea7\u5bf9\u8c61\nfind_pre_node | \u67e5\u627e\u5f53\u524d\u8282\u70b9\u4e4b\u524d\u7684\u540c\u7ea7\u5143\u7d20\u8282\u70b9\nfind_next | \u67e5\u627e\u5f53\u524d\u8282\u70b9\u4e4b\u540e\u7684\u540c\u7ea7\u5bf9\u8c61\nfind_next_node | \u67e5\u627e\u5f53\u524d\u8282\u70b9\u4e4b\u540e\u7684\u540c\u7ea7\u5143\u7d20\u8282\u70b9\nfind_child | \u67e5\u627e\u5f53\u524d\u8282\u70b9\u7684\u5b50\u5bf9\u8c61\nfind_child_node | \u67e5\u627e\u5f53\u524d\u8282\u70b9\u7684\u5b50\u5143\u7d20\u8282\u70b9\n\n### Element\u9ad8\u7ea7\u4f7f\u7528\u65b9\u6cd5\n> \u6709\u4e00\u4e2ahtml\u6e90\u7801\u5982\u4e0b\n```html\n
    \n 1\n 2\n \n 4\n bbb\n
    \n```\n##### \u4f60\u53ef\u4ee5\u4f7f\u7528\u5982\u4e0b\u4ee3\u7801\u67e5\u8be2\n```python\nzx = zxpath2.load('html\u6e90\u7801') #\u52a0\u8f7dhtml\u6e90\u7801\u6216\u4e00\u4e2a\u7ecf\u8fc7lxml.etree\u7f16\u8bd1\u7684\u5bf9\u8c61\nzx('div') # \u76f4\u63a5\u5c06\u5bf9\u8c61\u4f5c\u4e3a\u65b9\u6cd5\u4f7f\u7528, \u53c2\u6570\u53c2\u8003find\u65b9\u6cd5\nzx.div # \u904d\u5386\u641c\u7d22\u5f53\u524d\u8282\u70b9\u4e2d\u7684\u7b2c\u4e00\u4e2adiv\u5143\u7d20\nnode = zx.div.span.a # \u94fe\u5f0f\u67e5\u8be2\u7b2c\u4e00\u4e2adiv\u4e2d\u7684\u7b2c\u4e00\u4e2aspan\u4e2d\u7684\u7b2c\u4e00\u4e2aa\u5143\u7d20\nnode.href # \u83b7\u53d6\u5f53\u524d\u8282\u70b9\u7684href\u5c5e\u6027, \u5982\u679c\u6ca1\u6709\u8fd9\u4e2a\u5c5e\u6027\u5219\u8fd4\u56deNone\nnode.class_ # \u83b7\u53d6class\u5c5e\u6027\nnode['href'] # \u83b7\u53d6href\u5c5e\u6027, \u5982\u679c\u6ca1\u6709\u8fd9\u4e2a\u5c5e\u6027\u5219\u62a5\u9519\nnode['class'] # \u83b7\u53d6class\u5c5e\u6027\nnode in zx # \u5224\u65ad\u4e24\u4e2a\u5bf9\u8c61\u662f\u5426\u6307\u5411Dom\u6811\u4e2d\u7684\u540c\u4e00\u4e2a\u4f4d\u7f6e \u6216 node\u662f\u5426\u4e3azx\u7684\u5b50\u5b59\u8282\u70b9\nnode == zx # \u5224\u65ad\u4e24\u4e2a\u5bf9\u8c61\u662f\u5426\u6307\u5411Dom\u6811\u4e2d\u7684\u540c\u4e00\u4e2a\u4f4d\u7f6e\nzx.find('a', id=True) # \u67e5\u627e\u5b58\u5728id\u7684a\u5143\u7d20\nzx.find('a', id=False) # \u67e5\u627e\u4e0d\u5b58\u5728id\u7684a\u5143\u7d20\nzx.find(class_='c1') # \u67e5\u627eclass\u4e3ac1\u7684\u4efb\u4f55\u5143\u7d20\nzx.find('a', _class='c1', text=True) #\u67e5\u627eclass\u4e0d\u4e3ac1\u5e76\u4e14\u5b58\u5728\u6587\u672c\u7684a\u5143\u7d20\n```\n\n\n### \u66f4\u65b0\u65e5\u5fd7\n\u53d1\u5e03\u65f6\u95f4|\u7248\u672c|\u53d1\u5e03\u8bf4\u660e\n--|:--:|---\n19-06-05 | 1.1.3 | \u7d27\u6025\u4fee\u590d\u4e86\u4e00\u4e2abug, \u5982\u679chtml\u6e90\u7801\u662f\u7d27\u51d1\u578b\u7684, \u53c2\u6570method\u4e3ahtml\u65f6\u83b7\u53d6\u6e90\u7801\u4f1a\u8f93\u51fa\u7a7a\u7684Dom\u6811, \u5df2\u5c06method\u53c2\u6570\u6539\u4e3axml\n19-06-05 | 1.1.2 |
  • \u65b0\u589e\u65b9\u6cd5get\\_tail()\u7528\u4e8e\u83b7\u53d6\u8282\u70b9\u7684\u5c3e\u5df4\u6587\u672c, \u4e5f\u53ef\u4ee5\u4f7f\u7528tail\u5c5e\u6027\u83b7\u53d6
  • remove\\_all\\_attr()\u7528\u4e8e\u5220\u9664\u5f53\u524d\u5bf9\u8c61\u7684\u6240\u6709\u5c5e\u6027
  • \u4f18\u5316\u4e86\u8282\u70b9\u7c7b\u578b\u5224\u65ad\u65b9\u6cd5,etree.\\_ElementStringResult\u4e5f\u88ab\u89c6\u4e3a\u6587\u672c\u8282\u70b9
  • \u73b0\u5728\u83b7\u53d6html\u6e90\u7801\u5141\u8bb8\u7528\u6237\u8bbe\u7f6e\u8f93\u51fa\u683c\u5f0f, \u9ed8\u8ba4\u4e3ahtml. \u5141\u8bb8\u7528\u6237\u9009\u62e9\u662f\u5426\u8f93\u51fa\u5c3e\u5df4\u6587\u672c, \u9ed8\u8ba4\u4e0d\u8f93\u51fa
  • \u65b0\u589echange_text(text: str)\u7528\u4e8e\u4fee\u6539\u8282\u70b9\u7684\u4e3b\u8981\u6587\u672c
  • \u65b0\u589echange_tail(text: str)\u7528\u4e8e\u4fee\u6539\u8282\u70b9\u7684\u5c3e\u5df4\u6587\u672c
  • \n19-04-03 | 1.1.1 |
  • \u65b0\u589e\u65b9\u6cd5css(code, index: None or int = None), \u73b0\u5728\u53ef\u4ee5\u4f7f\u7528css\u4ee3\u7801\u9009\u62e9\u5bf9\u8c61\u4e86
  • \u65b0\u589e\u65b9\u6cd5remove_attr(key: str)\u7528\u4e8e\u5220\u9664\u5f53\u524d\u5bf9\u8c61\u7684\u67d0\u4e2a\u5c5e\u6027
  • \n19-03-19 | 1.1.0 |
  • \u53d6\u6d88\\_\\_init__.py\u4e2d\u7684from . import xxx
  • \u5c06\u4e0b\u5212\u7ebf\u5f00\u59cb\u7684\u6a21\u5757\u540d\u53bb\u6389\u4e0b\u5212\u7ebf
  • \u5c06\u6240\u6709\u641c\u7d22\u63a5\u53e3\u4e2d\u7684index\u91cd\u6784, \u4e0d\u518d\u5c06index\u89e3\u6790\u4e3a\u503c\u4f20\u5230\u539f\u751fxpath\u4ee3\u7801\u4e2d, \u4ec5\u4f5c\u4e3a\u5b57\u9762\u610f\u601d\u4ece\u5217\u8868\u4e2d\u63d0\u53d6\u7b2c\u51e0\u4e2a\u7ed3\u679c
  • \n19-01-30 | 1.0.3 |
  • \u73b0\u5728_Element_List\u7684str\u7ed3\u679c\u4e5f\u88ab\u91cd\u8f7d\u4e86
  • \u73b0\u5728\u53ef\u4ee5\u7528==\u5224\u65ad\u4e24\u4e2a_Element\u6216\u5217\u8868\u662f\u5426\u76f8\u7b49
  • \u4fee\u590d\u4e86\u83b7\u53d6\u5143\u7d20\u8282\u70b9html\u65f6\u4f1a\u5c06\u5143\u7d20\u8282\u70b9\u540e\u9762\u7684\u6587\u5b57\u4e5f\u653e\u5165html\u7684bug
  • \n19-01-21 | 1.0.2 |
  • \u91cd\u8f7d\u4e86str()\u7684\u7ed3\u679c
  • \u73b0\u5728\u53ef\u4ee5\u7528child_in\u5224\u65ad\u662f\u5426\u4e3a\u53e6\u4e00\u4e2a_Element\u7684\u5b50\u5b59\u4e86
  • \u53ef\u4ee5\u4f7f\u7528in\u6765\u5224\u65ad\u4e00\u4e2a_Element\u5bf9\u8c61\u662f\u5426\u4e3a\u53e6\u4e00\u4e2a\u7684\u5b50\u5b59\u6216\u548c\u53e6\u4e2a\u4e00\u5bf9\u8c61\u76f8\u7b49
  • \n19-01-18 | 1.0.1 | \u4fee\u590d\u83b7\u53d6\u6240\u6709\u7236\u8f88\u8282\u70b9\u65f6\u4f1a\u62a5\u9519\u7684bug\n\n- - -\n\u672c\u9879\u76ee\u4ec5\u4f9b\u6240\u6709\u4eba\u5b66\u4e60\u4ea4\u6d41\u4f7f\u7528, \u7981\u6b62\u7528\u4e8e\u5546\u4e1a\u7528\u9014\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://pypi.org/project/zxpath2/", "keywords": "", "license": "GNU GENERAL PUBLIC LICENSE", "maintainer": "", "maintainer_email": "", "name": "zxpath2", "package_url": "https://pypi.org/project/zxpath2/", "platform": "all", "project_url": "https://pypi.org/project/zxpath2/", "project_urls": { "Homepage": "https://pypi.org/project/zxpath2/" }, "release_url": "https://pypi.org/project/zxpath2/1.1.3/", "requires_dist": [ "lxml" ], "requires_python": "", "summary": "\u64cd\u4f5c\u66f4\u65b9\u4fbf\u7684xpath", "version": "1.1.3" }, "last_serial": 5361777, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "d1dfe1684ae114a17b4b8e00d6c7cece", "sha256": "c6822b0e5aabf941c57d74ba1b0a58acab1e32999086effc4c742cb5c274d9ec" }, "downloads": -1, "filename": "zxpath2-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "d1dfe1684ae114a17b4b8e00d6c7cece", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19993, "upload_time": "2018-11-03T13:11:19", "url": "https://files.pythonhosted.org/packages/f9/62/4f96638583c77a99182e46c9106f3c24d6648865b7b11e42613c0878e936/zxpath2-1.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "37669cc29026c2fb718f885ae5e4565c", "sha256": "bfcdcab303ae72ba6cabceb073a8a117896169c000ce532ebc2648df1a450b1c" }, "downloads": -1, "filename": "zxpath2-1.0.0.tar.gz", "has_sig": false, "md5_digest": "37669cc29026c2fb718f885ae5e4565c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5854, "upload_time": "2018-11-03T13:11:21", "url": "https://files.pythonhosted.org/packages/ff/b7/cfe881530a4aea2f82e0e3d7b64647c52232e5143973d1c07c8dcc17fe98/zxpath2-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "970f5b0212ff430f5bf8e580a53642c7", "sha256": "387021d83aa76b7b349a7c53fca81d693d70528616223d29d4adf4290becae56" }, "downloads": -1, "filename": "zxpath2-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "970f5b0212ff430f5bf8e580a53642c7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 20070, "upload_time": "2019-01-18T09:56:12", "url": "https://files.pythonhosted.org/packages/66/20/6116d16ff0aec3373b8858ca9d16ca571c9011d68195e478070815a702c0/zxpath2-1.0.1-py3-none-any.whl" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "fc1201396a00770de6a6886e107710db", "sha256": "1b41865ab3f24827182bb8c0360b154dca4cc1afb17643dff94c14d8834db083" }, "downloads": -1, "filename": "zxpath2-1.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "fc1201396a00770de6a6886e107710db", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 20283, "upload_time": "2019-01-21T01:58:08", "url": "https://files.pythonhosted.org/packages/df/56/7e9fec1985d9ff0e10009fcf03b72547ffc629ca56f151d5d1d5bd27c31a/zxpath2-1.0.2-py3-none-any.whl" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "06e004d461b4c1724b1b432579af6961", "sha256": "41e26c902a6fba9d0af1314d17a152412983963ad2231b3614b8c0cb1b2d4c3e" }, "downloads": -1, "filename": "zxpath2-1.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "06e004d461b4c1724b1b432579af6961", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 21983, "upload_time": "2019-01-30T04:06:37", "url": "https://files.pythonhosted.org/packages/f8/1c/11209d3de1bab9a6ec6a25acd14ce8e402f04eb3692fde423ecf1d9009da/zxpath2-1.0.3-py3-none-any.whl" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "b18f5ed76485c66061f5cc6eeb0e57c2", "sha256": "50be830c06636c4c404247d27bd6ee5d9333b2c32e6758c6ede4c409f46184d5" }, "downloads": -1, "filename": "zxpath2-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "b18f5ed76485c66061f5cc6eeb0e57c2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 21896, "upload_time": "2019-03-19T03:35:51", "url": "https://files.pythonhosted.org/packages/0b/63/e7ffd28bfb5cb2c5fb39a5b309ccf7b027bf6ecd70e275ca26b51396c8e6/zxpath2-1.1.0-py3-none-any.whl" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "997f42c317f7cd3565eb4ff8670e4684", "sha256": "003b4ddecc9dc6c85c7a0c87b4869e9802837786f9ccf3b4d4c6178a763f07ed" }, "downloads": -1, "filename": "zxpath2-1.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "997f42c317f7cd3565eb4ff8670e4684", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22109, "upload_time": "2019-04-03T03:12:25", "url": "https://files.pythonhosted.org/packages/89/1d/126d959f5fe15620d3fc77bfac62efa276baab962daec56e39ee152f6db0/zxpath2-1.1.1-py3-none-any.whl" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "2ac15194638aeb60840aa09c73dcd03a", "sha256": "edeb98eb3614d5a4d2d7e92a5f8224d2922051206a6b85c65ff15d5b056fc0d0" }, "downloads": -1, "filename": "zxpath2-1.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "2ac15194638aeb60840aa09c73dcd03a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22577, "upload_time": "2019-06-05T07:38:05", "url": "https://files.pythonhosted.org/packages/07/7c/e3328da6e5762a7eb5b661ad109137055933e098631708582f12da10dada/zxpath2-1.1.2-py3-none-any.whl" } ], "1.1.3": [ { "comment_text": "", "digests": { "md5": "4ae17c50a1ef06ed6a5f796621ba64d1", "sha256": "7a0333f9832cd308db142f89c4a95cc82fdf423cdf86e75dd97720d229d950ee" }, "downloads": -1, "filename": "zxpath2-1.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "4ae17c50a1ef06ed6a5f796621ba64d1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22647, "upload_time": "2019-06-05T09:43:07", "url": "https://files.pythonhosted.org/packages/89/c8/2e6bc33ba3b44edc10ef720534507fb330a535b7ffad3341cd445b05a438/zxpath2-1.1.3-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "4ae17c50a1ef06ed6a5f796621ba64d1", "sha256": "7a0333f9832cd308db142f89c4a95cc82fdf423cdf86e75dd97720d229d950ee" }, "downloads": -1, "filename": "zxpath2-1.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "4ae17c50a1ef06ed6a5f796621ba64d1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22647, "upload_time": "2019-06-05T09:43:07", "url": "https://files.pythonhosted.org/packages/89/c8/2e6bc33ba3b44edc10ef720534507fb330a535b7ffad3341cd445b05a438/zxpath2-1.1.3-py3-none-any.whl" } ] }