python3判断url链接是否为404的方法

yipeiwu_com6年前Python基础

本文实例为大家分享了python3判断url链接是否为404的具体代码,供大家参考,具体内容如下

import pymysql
import threading
import time
import urllib
import requests
 
# 打开数据库连接
db = pymysql.connect("192.168.0.*", "username", "password", "databasename")
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
# SQL 查询语句
sql = "SELECT sku,url_6 FROM url_new where flag_6 is null and url_6<>'' "
  # 执行SQL语句
cursor.execute(sql)
  # 获取所有记录列表
results = cursor.fetchall()
num = 0
for row in results:
  sku = row[0]
  url = row[1]
  html = requests.head(url) # 用head方法去请求资源头
  re=html.status_code
  num = num + 1
  print(num,re)
  if re == 200:
    sql_2 = "UPDATE url_new SET flag_6 = 0 WHERE sku = '%s'" % sku
    try:
      # 执行SQL语句
      cursor.execute(sql_2)
      #print(cursor.rowcount)
    except Exception as e:
      print(e)
      conn.rollback()
  if re == 404:
    sql_3 = "UPDATE url_new SET flag_6 = 1 WHERE sku = '%s'" % sku
    try:
      # 执行SQL语句
      cursor.execute(sql_3)
      print(cursor.rowcount)
    except Exception as e:
      print(e)
      conn.rollback()
  db.commit()
db.close()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

详解Python locals()的陷阱

在工作中, 有时候会遇到一种情况: 动态地进行变量赋值, 不管是局部变量还是全局变量, 在我们绞尽脑汁的时候, Python已经为我们解决了这个问题. Python的命名空间通过一种字典...

python多线程同步实例教程

python多线程同步实例教程

前言 进程之间通信与线程同步是一个历久弥新的话题,对编程稍有了解应该都知道,但是细说又说不清。一方面除了工作中可能用的比较少,另一方面就是这些概念牵涉到的东西比较多,而且相对较深。网络编...

python在ubuntu中的几种安装方法(小结)

python在ubuntu下有几种安装方法: 通过ubuntu官方的apt工具包安装 通过PPA(Personal Package Archive) 的apt工具包安装 通...

Python实现的数据结构与算法之快速排序详解

Python实现的数据结构与算法之快速排序详解

本文实例讲述了Python实现的数据结构与算法之快速排序。分享给大家供大家参考。具体分析如下: 一、概述 快速排序(quick sort)是一种分治排序算法。该算法首先 选取 一个划分元...

在Python 不同级目录之间模块的调用方法

Python的模块有自带的也有第三方,还可以自定义然后引用 1、调用自带的模块,例如,sys 调用自带的模块只需要import sys 引入既可以使用 2、第三方的需要先安装模块然后再i...