python-3.x - 学习 Python 从网站中提取数据
问题描述
我正在尝试编写一个脚本来从导出到 Excel 的内部网站获取数据,该数据被分成更小的部分并通过电子邮件发送给技术人员。(指标数据)我正在尝试使用 robobrowser 进入网站,但我不断收到以下信息:
C:\Users\user\AppData\Local\Programs\Python\Python36-32\Aging.py Traceback(最近一次调用最后):
文件“C:\Users\user\AppData\Local\Programs\Python\Python36-32\Aging.py”,第 3 行,从 robobrowser 导入 RoboBrowser
文件“C:\Users\user\AppData\Local\Programs\Python\Python36-32\lib\site-packages\robobrowser-0.5.3-py3.6.egg\robobrowser__init__.py”,第 3 行,来自 .浏览器导入 RoboBrowser
文件“C:\Users\user\AppData\Local\Programs\Python\Python36-32\lib\site-packages\robobrowser-0.5.3-py3.6.egg\robobrowser\browser.py”,第 7 行,在从 bs4 导入 BeautifulSoup
文件“C:\Users\user\AppData\Local\Programs\Python\Python36-32\lib\site-packages\bs4__init__.py”,第 30 行,从 .builder 导入 builder_registry,ParserRejectedMarkup
文件“C:\Users\user\AppData\Local\Programs\Python\Python36-32\lib\site-packages\bs4\builder__init__.py”,第 308 行,来自 . 导入 _htmlparser
文件“C:\Users\user\AppData\Local\Programs\Python\Python36-32\lib\site-packages\bs4\builder_htmlparser.py”,第 7 行,从 html.parser 导入(ImportError: cannot import name ' HTMLParseError'
这是代码:
import webbrowser
import re
from robobrowser import RoboBrowser
#Set BR module
br = RoboBrowser()
#open a website
br.open("https://www.whatever.com")
form = br.get_form()
form ['username'] = "username"
form ['password'] = "password"
br.submit_form(form)
任何帮助,将不胜感激。
解决方案
您应该尝试重新安装 RoboBrowser 和 BeautifulSoup。发生的事情是,当你 时import robobrowser
,RoboBrowser 然后尝试import BeautifulSoup
(一个 python 模块),然后尝试import _htmlparser
(一个作为 BeautifulSoup 包的一部分的 python 模块),但它找不到该文件并且加载失败。
这很可能是由丢失或损坏的文件(或者可能是过时的版本)引起的。如果您重新安装BeautifulSoup
(并且可能是robobrowser
为了安全起见),它应该可以解决问题。
推荐阅读
- typescript - 为什么 tsc (typescript) 给我错误“找不到 xyz 的类型定义文件”?
- python - 如何在不使用内部元素的情况下将列表拆分为 x 个列表?
- python - 如何使用 Pandas 在 csv 文件中创建新列,并根据这些列中的值添加数据
- android - 带有 React Native 和 Headless JS 的 Socket IO,无法杀死它
- javascript - NodeJS parallel PostgreSQL query?
- reactjs - 实现 react-select 包时遇到问题
- google-app-engine - app.yaml: max_concurrent_requests available in python flex environment?
- python - 从数据框中返回有关信息的整行
- python - Python-Kruskal Wallis--> Dunn 事后测试
- logstash - 如何在logstash if语句中使用和条件