U87
V2EX  ›  问与答

Python 问个 3 层循环问题,我被自己绕晕了,妈的

  •  
  •   U87 · Jul 19, 2018 · 2668 views
    This topic created in 2885 days ago, the information mentioned may be changed or developed.

    这边在做个微博爬虫,有 3 层接口,第一层接口获取用户表,第二层接口获取用户发表的微博内容,第三层获取评论.这边在第三层评论获取完了以后,入库把每层的想要接口数据,直接 insert 库里,结果都是 null,直接打印是有数据的,有 commit,不知道哪里有问题了

    12 replies    2018-07-19 21:59:10 +08:00
    zuoakang
        1
    zuoakang  
       Jul 19, 2018 via Android
    贴出 github
    imn1
        2
    imn1  
       Jul 19, 2018
    那就是入库过程错了,就算编码问题,入库也不会 null 的
    U87
        3
    U87  
    OP
       Jul 19, 2018
    @zuoakang 代码写的比较垃圾, 2333 https://github.com/kkw1201/gifviewer
    U87
        4
    U87  
    OP
       Jul 19, 2018
    @imn1 入库过程应该没有错,很简单的几行代码
    privatezcoding
        5
    privatezcoding  
       Jul 19, 2018
    你的 sql 语句明显有问题。
    你把一个纯字符串给 sql 入库当然全是 null
    U87
        6
    U87  
    OP
       Jul 19, 2018
    huijiewei
        7
    huijiewei  
       Jul 19, 2018 via iPhone
    你这代码竟然没报错

    python 真神奇
    怪不得很多人喜欢
    huijiewei
        8
    huijiewei  
       Jul 19, 2018 via iPhone
    sql = """insert into sjk(source, account_url, account_nickname, description, content, comments, crawl_time, publish_time, comments_nickname) values(source, account_url, account_nickname, description, content, comments, crawl_time, publish_time, comments_nickname)"""

    这种 sql 语句,插入的是那虚无缥缈的存在都不报错的吗
    golmic
        9
    golmic  
       Jul 19, 2018 via Android
    问题楼上都指出来了。你这缩进是真
    ThirdFlame
        10
    ThirdFlame  
       Jul 19, 2018
    第一次遇到比我缩进还厉害的。
    不应该把这些步骤都函数化么?

    明显是 155 行啊, 难道在数据库里都没有看出来?
    U87
        11
    U87  
    OP
       Jul 19, 2018
    @ThirdFlame 看出来了 这种低级错误。。
    U87
        12
    U87  
    OP
       Jul 19, 2018
    @golmic。。。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1693 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 16:23 · PVG 00:23 · LAX 09:23 · JFK 12:23
    ♥ Do have faith in what you're doing.