python 提取网页 charset 的方法

经过十几万网页采集测试,有效率99.99%

def pick_charset(html):
    """
    从文本中提取 meta charset
    :param html:
    :return:
    """
    charset = None
    m = re.compile('<meta .*(http-equiv="?Content-Type"?.*)?charset="?([a-zA-Z0-9_-]+)"?', re.I).search(html)
    if m and m.lastindex == 2:
        charset = m.group(2).lower()
    return charset

注意引入 re,如果有更好的方法欢迎联系 coconets@163.com

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 您好!针对您的问题,我可以提供以下思路: 1. 使用 Python requests 库和 BeautifulSoup 库抓取豆瓣电影的数据,具体可以参考相关教程。 2. 将抓取到的数据存入 Python 的字典或列表。 3. 使用 Python 的 pymysql 库连接到 MySQL 数据库,并且创建一个表格存储豆瓣电影数据。可以参考以下代码: ``` import pymysql # 连接到 MySQL 数据库 db = pymysql.connect(host='localhost', user='root', password='password', database='douban_movies', charset='utf8') cursor = db.cursor() # 创建表格 sql = """CREATE TABLE movies ( id INT(11) NOT NULL AUTO_INCREMENT, title VARCHAR(255), rating FLOAT(2,1), director VARCHAR(255), actors VARCHAR(255), year INT(4), genre VARCHAR(255), PRIMARY KEY (id) )""" cursor.execute(sql) # 插入数据 for movie in movies: sql = """INSERT INTO movies (title, rating, director, actors, year, genre) VALUES (%s, %s, %s, %s, %s, %s)""" cursor.execute(sql, (movie['title'], movie['rating'], movie['director'], movie['actors'], movie['year'], movie['genre'])) db.commit() db.close() ``` 其,在实际应用需要根据自己的实际情况进行修改。 希望这些信息能够对您有所帮助! ### 回答2: Python是一种强大的编程语言,可以用它编写爬虫程序来从网页上抓取数据。豆瓣是一个电影评分网站,我们可以利用Python爬虫程序来抓取豆瓣电影信息,并将这些信息导入到MySQL数据库。 首先,我们需要安装必要的Python库,如requests和BeautifulSoup。这些库能够帮助我们发送HTTP请求并解析HTML网页。 然后,我们需要编写一个函数来发送HTTP请求,获得豆瓣电影页面的HTML内容。我们可以使用requests库的get()函数来发送GET请求并获得响应。 接下来,我们可以使用BeautifulSoup库来解析HTML内容,并找到电影信息所在的元素。我们可以使用find()或find_all()函数来查找指定的HTML元素。 在找到电影信息后,我们可以使用正则表达式或字符串处理函数来提取出电影的标题、评分、导演等字段。 最后,我们可以使用Python的MySQL连接库来连接到MySQL数据库,并编写插入数据的SQL语句。我们可以使用execute()函数来执行SQL语句,并使用commit()函数提交更改。 总结起来,我们首先用Python编写爬虫程序来抓取豆瓣电影页面的HTML内容,然后使用BeautifulSoup库解析HTML提取出电影信息,最后将这些信息导入到MySQL数据库。这样,我们就可以在数据库保存豆瓣电影的信息,并进行数据分析、统计等操作。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值