可以帮看下哪里错了吗?import pymysql.cursors这行出现警告 提示是说缩进问题,怎么改?

来源:4-1 存储数据到MySQL

999pourquoi

2017-08-16 11:50

Traceback (most recent call last):
  File "D:\pythonxxhj\pycode\imooc\wiki2mysql.py", line 6, in <module>
    import pymysql.cursors
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pymysql\__init__.py", line 92, in <module>
    from . import connections as _orig_conn
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pymysql\connections.py", line 22, in <module>
    from .cursors import Cursor
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pymysql\cursors.py", line 138
    connection = self._get_db()
                              ^
IndentationError: unindent does not match any outer indentation level



#代码如下
#! /usr/local/bin/python3
# -*- coding:utf-8 -*-
from urllib.request import urlopen
from bs4 import BeautifulSoup
import re
import pymysql.cursors
resp = urlopen("https://en.wikipedia.org/wiki/Main_Page").read().decode("utf-8")
soup = BeautifulSoup(resp,"html.parser")
listUrls = soup.findAll("a",href=re.compile(r"^/wiki/"))
for url in listUrls:
    if not re.search("\.(jpg|JPG)$", url["href"]):
        print(url.get_text(),"<---->","https://en.wikipedia.org"+url["href"])
        connection=pymysql.connect(
            host='localhost',
             user='root',
             password='root',
             db='wikiurl',
             charset='utf8mb4'
             )
        try:
            with connection.cursor() as cursor:
                sql="insert into `urls`(`urlhref`,`urlname`)values(%s,%s)"
                cursor.execute(sql,(url.get_text(),"https://en.wikipedia.org"+url["href"]))
                connection.commit()
        finally:
                connection.close()


写回答 关注

1回答

  • 豪哥哥是只大灰狼
    2017-08-16 21:20:26

    Connect,C大写,不晓得是这个原因不

python遇见数据采集

本教程让你初步掌握Python进行数据采集,创造属于你的价值

59669 学习 · 200 问题

查看课程

相似问题