利用Python检测URL状态

yipeiwu_com5年前Python基础

需求:Python检测URL状态,并追加保存200的URL

代码一:

#! /usr/bin/env python
#coding=utf-8
import sys
import requests
def getHttpStatusCode(url):
  try:
    request = requests.get(url)
    httpStatusCode = request.status_code
    return httpStatusCode
  except requests.exceptions.HTTPError as e:
    return e
 
if __name__ == "__main__":
  with open('1.txt', 'r') as f:
    for line in f:
      try:
        status = getHttpStatusCode(line.strip('\n'))#换行符
        if status == 200:
          with open('200.txt','a') as f:
            f.write(line + '\n')
            print line
        else:
          print 'no 200 code'
      except Exception as e:
        print e

代码二:

#! /usr/bin/env python
# -*--coding:utf-8*-

import requests

def request_status(line):
  conn = requests.get(line)
  if conn.status_code == 200:
    with open('url_200.txt', 'a') as f:
      f.write(line + '\n')
    return line13   else:
    return None


if __name__ == '__main__':
  with open('/1.txt', 'rb') as f:
    for line in f:
      try:
        purge_url = request_status(line.strip('\n'))
      except Exception as e:
        pass

代码三:

#! /usr/bin/env python
#coding:utf-8
import os,urllib,linecache
import sys
result = list()

for x in linecache.updatecache(r'1.txt'):
  try:
    a = urllib.urlopen(x.replace('/n','')).getcode()
    #print x,a
  except Exception,e:
    print e
  if a == 200:
    #result.append(x)               #保存
    #result.sort()                    #排序结果
    #open('2.txt', 'w').write('%s' % '\n'.join(result)) #保存入结果文件
    with open ('200urllib.txt','a') as f: ## r只读,w可写,a追加
      f.write(x + '\n')
  else:
    print 'error'

总结

以上所述是小编给大家介绍的python 检测url 状态,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

python3+PyQt5重新实现QT事件处理程序

python3+PyQt5重新实现QT事件处理程序

本文是对《Python Qt GUI快速编程》的第10章的例子events用Python3+PyQt5进行改写,涉及到重新实现QWidget的事件处理程序。本例子涉及到上下文菜单,鼠标事...

Python中数字以及算数运算符的相关使用

Python中数字以及算数运算符的相关使用

Python数字 数字数据类型用于存储数值。 他们是不可改变的数据类型,这意味着改变数字数据类型会分配一个新的对象。 当你指定一个值时,Number对象就会被创建: var1 =...

python用户评论标签匹配的解决方法

python用户评论标签匹配的解决方法

我们观察用户评论发现:属性词往往和情感词伴随出现,原因是用户通常会在描述属性时表达情感,属性是情感表达的对象。还发现:属性词和专用情感词基本都是名词或形容词(形谓词)。 算法流程图如下:...

Python统计日志中每个IP出现次数的方法

本文实例讲述了Python统计日志中每个IP出现次数的方法。分享给大家供大家参考。具体如下: 这脚本可用于多种日志类型,本人测试MDaemon的all日志文件大小1.23G左右,分析用时...

python中协程实现TCP连接的实例分析

在网络通信中,每个连接都必须创建新线程(或进程) 来处理,否则,单线程在处理连接的过程中, 无法接受其他客户端的连接。所以我们尝试使用协程来实现服务器对多个客户端的响应。 与单一TCP...