记录一下python写爬虫必须要注意的几个点

522次阅读
没有评论

共计 565 个字符,预计需要花费 2 分钟才能阅读完成。

因为好久没写过爬虫了,这次单位有需求要爬取几TB的资料,在测试过程中遇到一些问题,总结下来,未来写爬虫的时候可以避坑。

问题1:JSON Object Key不存在。规范的情况下,返回的JSON对象数组应该是统一的,即使数据不存在也应该是空字符串或者null或者别的什么,但是这个系统过于老旧,编码也乱七八糟不规范,导致个别数据不存在的时候,压根不返回这个Key。

解决方案:

if 'key' not in item:
    continue

只需要判断一下这个key在不在item里,不在直接跳出此循环。

 

问题2:保存的文件名/路径有非法字符。在Windows下,创建的文件夹/文件时,文件名不能包含以下字符:

\ / : * ? " < > |

因此,如果文件名/路径名中有此些字符,需要替换掉,这里提供一个替换方法:

def string_format(str: string, replacement: string=''):
    illegal_words = ['\\', '/', '*', '?' '"', '<', '>', '|']
    for word in illegal_words:
        if word in str:
            str = str.replace(word, replacement)
    return str

参数说明:str 要格式化的字符串,replacement 将非法字符替换成指定内容,不填写则替换空字符串。

正文完
 0
zjh4473
版权声明:本站原创文章,由 zjh4473 于2023-04-02发表,共计565字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)