为了账号安全,请及时绑定邮箱和手机立即绑定

cursor.execute报错,代码和老师的一样

MySQL版本5.7.17,Python版本3.6.0,鼓捣一下午都没弄出来

http://img1.sycdn.imooc.com//58cf8dd50001ee1708910459.jpg

正在回答

4 回答

import io
import sys
import re
import pymysql.cursors
from urllib.request import urlopen
from bs4 import BeautifulSoup as bs

sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf8')
# 请求URL,并把结果用UTF-8编码
resp = urlopen("https://en.wikipedia.org/wiki/Wiki").read().decode('utf-8')
# 使用BeautifulSoup去解析
soup = bs(resp, "html.parser")
# 获取所有以/wiki/开头的a标签的href属性
listurls = soup.find_all('a', href=re.compile("^/wiki/"))
# 输出所有的词条对应的名称和URL
for url in listurls:
    # 过滤以.jpg或.JPG结尾的URL
    if not re.search("\.(jpg|JPG)$", url["href"]):
        # 输出URL的文字对应的链接
        # string只能获取一个 get_text()获取标签下所有的文字
        print(url.get_text(),"<---->","https://en.wikipedia.org" + url["href"])

        # 获取数据库链接
        connection = pymysql.connect(host="localhost",user="root",password="123456",db="wikiurl",charset="utf8mb4")

        try:
            # 获取会话指针
            with connection.cursor() as cursor:

                # 创建sql语句
                sql = 'INSERT INTO `urls`(`urlname`,`urlhref`)VALUES(%s,%s)'

                # 执行sql语句
                cursor.execute(sql,(url.get_text(),"https://en.wikipedia.org" + url["href"]))

                # 提交
                connection.commit()
        finally:
            connection.close()


0 回复 有任何疑惑可以回复我~
#1

Mr_Blue_001 提问者

你这个正常运行的,啥原因呢???
2017-03-23 回复 有任何疑惑可以回复我~
#2

Mr_Blue_001 提问者

知道了,我insert拼写错了,简直了!
2017-03-23 回复 有任何疑惑可以回复我~

是什么原因呢?我也出现了相同的问题~

0 回复 有任何疑惑可以回复我~
#1

Mr_Blue_001 提问者

我insert拼写错了,不知道你是不是
2017-04-05 回复 有任何疑惑可以回复我~
#2

兰陵萧萧笙 回复 Mr_Blue_001 提问者

为什么我运行你的代码,把insert更改过来,还是出错啊?
2017-05-24 回复 有任何疑惑可以回复我~
#3

Mr_Blue_001 提问者 回复 兰陵萧萧笙

这就不造了
2017-05-27 回复 有任何疑惑可以回复我~
# 引入开发包
from urllib.request import urlopen
from bs4 import BeautifulSoup as bs
import re
import pymysql.cursors

# 请求URL,并把结果用UTF-8编码
resp = urlopen("https://zh.wikipedia.org/wiki/Wikipedia:%E9%A6%96%E9%A1%B5").read().decode("utf-8")

# 使用BeautifulSoup去解析
soup = bs(resp, "html.parser")

# 获取所有以/wiki/开头的a标签的href属性
listUrls = soup.findAll("a", href=re.compile("^/wiki/"))

# 输出所有的词条对应的名称和URL
for url in listUrls:
    # 过滤以.jpg或.JPG结尾的URL
    if not re.search("\.(jpg|JPG)$", url["href"]):
        # 输出URL的文字对应的链接
        # string只能获取一个 get_text()获取标签下所有的文字
        print(url.get_text(), "<---->", "https://zh.wikipedia.org" + url["href"])
        # 获取数据库链接
        connection = pymysql.connect(host='localhost',
                                     user='root',
                                     password='root',
                                     db='wikiurl',
                                     charset='utf8mb4')
        try:
            # 获取会话指针
            with connection.cursor() as cursor:
                # 创建sql语句
                sql = "inset into `urls` (`urlname`, `urlhref`) values(%s, %s)"

                # 执行sql语句
                cursor.execute(sql, (url.get_text(), "https://zh.wikipedia.org" + url["href"]))

                # 提交
                connection.commit()
        finally:
            connection.close()


0 回复 有任何疑惑可以回复我~
贴代码看看


0 回复 有任何疑惑可以回复我~
#1

Mr_Blue_001 提问者

代码在下面
2017-03-21 回复 有任何疑惑可以回复我~
#2

浓烈的咖啡 回复 Mr_Blue_001 提问者

SQL语法错误. 把connection 打印出来看看。 检查数据库和代码 pymysql.connect缩进
2017-03-21 回复 有任何疑惑可以回复我~
#3

Mr_Blue_001 提问者 回复 浓烈的咖啡

<pymysql.connections.Connection object at 0x0381E270> connection打印出来是这个,又检查了一遍,缩进跟老师一样的。
2017-03-21 回复 有任何疑惑可以回复我~
#4

浓烈的咖啡 回复 Mr_Blue_001 提问者

我代码贴出来了,你直接复制运行试试。数据库表重新按老师的方法建。
2017-03-21 回复 有任何疑惑可以回复我~
查看1条回复

举报

0/150
提交
取消

cursor.execute报错,代码和老师的一样

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信