V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Rookbyte
V2EX  ›  问与答

让人崩溃的需求!从网页中爬取地址信息, Java

  •  1
     
  •   Rookbyte · Sep 29, 2018 · 3866 views
    This topic created in 2777 days ago, the information mentioned may be changed or developed.

    我现在的做法,用 jsoup 去标签,然后在得到的字符串里面找地址

    可是!!! 地址没什么规律啊

    有的在一个标签里,有的在多个标签里,还有的中间有逗号

    无语。。。。。

    所以大佬们有什么建议能帮帮我这只小菜鸡么

    示例: 湖北省武汉市武昌区东湖西路特 2 号平安财富中心(东湖大厦正对面) B 座 7 楼 桂林市公共资源交易中心 4 号 柳州市柳江新城区,北接柳江大道(原堡隆路),南至南一路(原广场北路) 江苏省淮安市高教园区科技路 山东省淄博市张店区北西五路 68

    26 replies    2018-09-30 00:15:04 +08:00
    Aoang
        1
    Aoang  
       Sep 29, 2018 via Android
    xx 省 xx 市
    Rookbyte
        2
    Rookbyte  
    OP
       Sep 29, 2018
    @Aoang 明显不行呦
    lhx2008
        3
    lhx2008  
       Sep 29, 2018 via Android
    找地址提取的轮子
    lithium4010
        4
    lithium4010  
       Sep 29, 2018
    具体什么网页?
    mhycy
        5
    mhycy  
       Sep 29, 2018
    关键字分割后重组
    lyusantu
        6
    lyusantu  
       Sep 29, 2018
    人为开发的都是有一定的规则的
    Rookbyte
        7
    Rookbyte  
    OP
       Sep 29, 2018
    @lhx2008 地址是给定的,不用爬
    Rookbyte
        9
    Rookbyte  
    OP
       Sep 29, 2018
    @mhycy 嗯嗯,想过,但是关键字不好确定,可以看下我放的那两个网址。而且比如“地址”的话是很常见的关键字,后面跟的不一定是地址,比如“单位地址:_____________________________”,这样的
    Rookbyte
        10
    Rookbyte  
    OP
       Sep 29, 2018
    @lyusantu 说实话,我感觉要么是好几个人开发的,要么是机器生成的
    xycool
        11
    xycool  
       Sep 29, 2018
    @Yohann97 这难道是不是 cms 发布出来的吗。。。
    zhuangjia
        12
    zhuangjia  
       Sep 29, 2018
    没有头绪。。。
    EvilCult
        13
    EvilCult  
       Sep 29, 2018
    我觉得这事儿需要 py 大佬的人工智能.........
    cccssss
        14
    cccssss  
       Sep 29, 2018
    你找找发快递时候,app 里粘贴一段文本就能识别地址的轮子
    kokutou
        15
    kokutou  
       Sep 29, 2018 via Android
    看看顺丰和圆通的微信小程序?
    地址自动识别,但是提供对话框让用户查错修改。
    ClutchBear
        16
    ClutchBear  
       Sep 29, 2018
    ![]( https://ww1.sinaimg.cn/large/005YhI8igy1fvqkuamd34j313k0fggp5)
    用 foolnltk 大该能处理成这样的.
    ClutchBear
        18
    ClutchBear  
       Sep 29, 2018
    foolnltk 基本上能满足,
    不满足就需要手动调整了.
    ClutchBear
        19
    ClutchBear  
       Sep 29, 2018
    代码
    ```
    import fool
    text = """七、采购人联系方式

    采购单位:湖北省梁子湖管理局

    地 址:鄂州市梁子湖区梁子镇广场大道 1 号

    联 系 人:袁主任

    电 话:0711-2473006

    八、代理机构联系方式

    单 位:武汉渤正项目管理有限公司

    地 址:武汉市中北路楚河汉街同成富苑 A 座 2706

    邮 编:430077

    联 系 人:刘工

    电 话:027-86615324"""
    words, ners = fool.analysis(text)
    print(ners)
    ```
    <script src="https://gist.github.com/playbear/c89115a6905d9f346ffeb70c5543fc62.js"></script>
    ClutchBear
        20
    ClutchBear  
       Sep 29, 2018
    结果
    [[(16, 34, 'location', '湖北省梁子湖管理局\n\n 地 址'), (34, 55, 'location', '鄂州市梁子湖区梁子镇广场大道 1 号\n\n'), (60, 64, 'person', '袁主任'), (63, 67, 'person', '\n\n 电'), (66, 70, 'person', ' '), (105, 118, 'company', '武汉渤正项目管理有限公司'), (126, 147, 'location', '武汉市中北路楚河汉街同成富苑 A 座 2706'), (169, 173, 'person', '刘工\n')]]
    arerec
        21
    arerec  
       Sep 29, 2018
    用一些自然语言处理的 命名实体识别的轮子,提取地址类的实体
    ClutchBear
        22
    ClutchBear  
       Sep 29, 2018
    ClutchBear
        23
    ClutchBear  
       Sep 29, 2018   ❤️ 2

    贴图再试试
    Rookbyte
        24
    Rookbyte  
    OP
       Sep 29, 2018
    @xycool 嗯嗯,不太懂这些,刚刚看了下,对于这种 cms 发布的东西有什么好的处理方法么
    ccnccy
        25
    ccnccy  
       Sep 30, 2018 via iPhone
    看你两个网址爬
    址: 后面的信息不就行了
    Rookbyte
        26
    Rookbyte  
    OP
       Sep 30, 2018
    @ccnccy 哈哈,思路清奇,早点睡,明天去试试。不过存在 地址冒号空格加分段地址的情况
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5824 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 134ms · UTC 02:40 · PVG 10:40 · LAX 19:40 · JFK 22:40
    ♥ Do have faith in what you're doing.