[Errno 2] File b'static/Data/observe/20201125/RiskData.20201125.csv' does not exist: b'static/Data/observe/20201125/RiskData.20201125.csv'
Request Method: | GET |
---|---|
Request URL: | http://www.model.tmd.go.th/RSrisk/?obs=20201125 |
Django Version: | 2.1 |
Exception Type: | FileNotFoundError |
Exception Value: | [Errno 2] File b'static/Data/observe/20201125/RiskData.20201125.csv' does not exist: b'static/Data/observe/20201125/RiskData.20201125.csv' |
Exception Location: | pandas/_libs/parsers.pyx in pandas._libs.parsers.TextReader._setup_parser_source, line 689 |
Python Executable: | /usr/local/bin/python3 |
Python Version: | 3.7.3 |
Python Path: | ['/home/nwpwww/webapp', '/usr/local/lib/python37.zip', '/usr/local/lib/python3.7', '/usr/local/lib/python3.7/lib-dynload', '/root/.local/lib/python3.7/site-packages', '/usr/local/lib/python3.7/site-packages'] |
Server time: | Fri, 29 Mar 2024 12:04:36 +0700 |
/usr/local/lib/python3.7/site-packages/django/core/handlers/exception.py
in inner
This decorator is automatically applied to all middleware to ensure that
no middleware leaks an exception and that the next middleware in the stack
can rely on getting a response instead of an exception.
"""
@wraps(get_response)
def inner(request):
try:
response = get_response(request)...
except Exception as exc:
response = response_for_exception(request, exc)
return response
return inner
Variable | Value |
---|---|
exc | FileNotFoundError(2, "File b'static/Data/observe/20201125/RiskData.20201125.csv' does not exist") |
get_response | <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7fba8af77c88>> |
request | <WSGIRequest: GET '/RSrisk/?obs=20201125'> |
/usr/local/lib/python3.7/site-packages/django/core/handlers/base.py
in _get_response
break
if response is None:
wrapped_callback = self.make_view_atomic(callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs)
except Exception as e:
response = self.process_exception_by_middleware(e, request)...
# Complain if the view returned None (a common error).
if response is None:
if isinstance(callback, types.FunctionType): # FBV
view_name = callback.__name__
else: # CBV
Variable | Value |
---|---|
callback | <function remote_sensing_index at 0x7fba6a9d9598> |
callback_args | () |
callback_kwargs | {} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7fba8b27e940>> |
request | <WSGIRequest: GET '/RSrisk/?obs=20201125'> |
resolver | <URLResolver 'webapp.urls' (None:None) '^/'> |
resolver_match | ResolverMatch(func=riskmap.riskmap_view.remote_sensing_index, args=(), kwargs={}, url_name=None, app_names=[], namespaces=[]) |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7fba8af77c88> |
wrapped_callback | <function remote_sensing_index at 0x7fba6a9d9598> |
/usr/local/lib/python3.7/site-packages/django/core/handlers/base.py
in _get_response
response = middleware_method(request, callback, callback_args, callback_kwargs)
if response:
break
if response is None:
wrapped_callback = self.make_view_atomic(callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs)...
except Exception as e:
response = self.process_exception_by_middleware(e, request)
# Complain if the view returned None (a common error).
if response is None:
if isinstance(callback, types.FunctionType): # FBV
Variable | Value |
---|---|
callback | <function remote_sensing_index at 0x7fba6a9d9598> |
callback_args | () |
callback_kwargs | {} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7fba8b27e940>> |
request | <WSGIRequest: GET '/RSrisk/?obs=20201125'> |
resolver | <URLResolver 'webapp.urls' (None:None) '^/'> |
resolver_match | ResolverMatch(func=riskmap.riskmap_view.remote_sensing_index, args=(), kwargs={}, url_name=None, app_names=[], namespaces=[]) |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7fba8af77c88> |
wrapped_callback | <function remote_sensing_index at 0x7fba6a9d9598> |
/home/nwpwww/webapp/riskmap/riskmap_view.py
in remote_sensing_index
return render(request, 'index_forecast.html', context)
def remote_sensing_index(request):
#template = loader.get_template('index.html')
query_string = request.GET.urlencode()
show_date_observe , spatial , riskmap = set_remote_sensing_image(query_string)
Dashboard_table_header , Dashboard_table_data , mr , ms , boxplot_data = set_riskmap_remote_sensing_table_report(query_string)...
context = {
'debug' : '' ,
'show_date_observe' : show_date_observe ,
'datetime_RS_navbar' : set_riskmap_obs_navbar(query_string , observe_mode = True),
'datetime_navbar' : set_riskmap_navbar(query_string, forecast_mode = False),
'persiann_qpe_image': spatial['persiann'],
Variable | Value |
---|---|
query_string | 'obs=20201125' |
request | <WSGIRequest: GET '/RSrisk/?obs=20201125'> |
riskmap | {'persiann': 'Data/observe/20201125/persiann/persiann_Riskmap_20201125.0000Z.png', 'radar': 'Data/observe/20201125/radar/radar_Riskmap_20201125.0000Z.png'} |
show_date_observe | '25 พฤศจิกายน 2563' |
spatial | {'persiann': 'Data/observe/20201125/persiann/persiann_24hrs_20201125.0000Z.png', 'radar': 'Data/observe/20201125/radar/radar_24hrs_20201125.0000Z.png'} |
/home/nwpwww/webapp/riskmap/riskmap_view.py
in set_riskmap_remote_sensing_table_report
latest_xdate = datetime.strptime(q_str.split('=')[-1] , '%Y%m%d')
latest_date = datetime.strftime(latest_xdate , '%Y%m%d')
else:
latest_date = sorted(os.listdir(riskmap_data_directory))[-1]
riskmap_datapath = riskmap_data_directory + latest_date + '/RiskData.' + latest_date + '.csv'
dframe = pd.read_csv(riskmap_datapath)...
df_subColumns = ['REGION_TH','ADM1_TH','ADM2_TH' , 'persiann' , 'radar']
web_subColumns = ['ภาค', 'จังหวัด' , 'อำเภอ' , 'ข้อมูล PERSIANN-CCS' , 'ข้อมูล Radar-Composite']
df = dframe[df_subColumns]
new_columns_name = [col.replace('00:00Z ','') for col in web_subColumns]
Variable | Value |
---|---|
latest_date | '20201125' |
latest_xdate | datetime.datetime(2020, 11, 25, 0, 0) |
q_str | 'obs=20201125' |
riskmap_data_directory | 'static/Data/observe/' |
riskmap_datapath | 'static/Data/observe/20201125/RiskData.20201125.csv' |
/usr/local/lib/python3.7/site-packages/pandas/io/parsers.py
in parser_f
error_bad_lines=error_bad_lines,
low_memory=low_memory,
mangle_dupe_cols=mangle_dupe_cols,
infer_datetime_format=infer_datetime_format,
skip_blank_lines=skip_blank_lines,
)
return _read(filepath_or_buffer, kwds)...
parser_f.__name__ = name
return parser_f
Variable | Value |
---|---|
cache_dates | True |
chunksize | None |
comment | None |
compression | 'infer' |
converters | None |
date_parser | None |
dayfirst | False |
decimal | b'.' |
default_sep | ',' |
delim_whitespace | False |
delimiter | ',' |
dialect | None |
doublequote | True |
dtype | None |
encoding | None |
engine | 'c' |
engine_specified | False |
error_bad_lines | True |
escapechar | None |
false_values | None |
filepath_or_buffer | 'static/Data/observe/20201125/RiskData.20201125.csv' |
float_precision | None |
header | 'infer' |
index_col | None |
infer_datetime_format | False |
iterator | False |
keep_date_col | False |
keep_default_na | True |
kwds | {'cache_dates': True, 'chunksize': None, 'comment': None, 'compression': None, 'converters': None, 'date_parser': None, 'dayfirst': False, 'decimal': b'.', 'delim_whitespace': False, 'delimiter': ',', 'dialect': None, 'doublequote': True, 'dtype': None, 'encoding': None, 'engine': 'c', 'engine_specified': False, 'error_bad_lines': True, 'escapechar': None, 'false_values': None, 'float_precision': None, 'header': 'infer', 'index_col': None, 'infer_datetime_format': False, 'iterator': False, 'keep_date_col': False, 'keep_default_na': True, 'lineterminator': None, 'low_memory': True, 'mangle_dupe_cols': True, 'memory_map': False, 'na_filter': True, 'na_values': None, 'names': None, 'nrows': None, 'parse_dates': False, 'prefix': None, 'quotechar': '"', 'quoting': 0, 'skip_blank_lines': True, 'skipfooter': 0, 'skipinitialspace': False, 'skiprows': None, 'squeeze': False, 'thousands': None, 'true_values': None, 'usecols': None, 'verbose': False, 'warn_bad_lines': True} |
lineterminator | None |
low_memory | True |
mangle_dupe_cols | True |
memory_map | False |
na_filter | True |
na_values | None |
names | None |
nrows | None |
parse_dates | False |
prefix | None |
quotechar | '"' |
quoting | 0 |
sep | ',' |
skip_blank_lines | True |
skipfooter | 0 |
skipinitialspace | False |
skiprows | None |
squeeze | False |
thousands | None |
true_values | None |
usecols | None |
verbose | False |
warn_bad_lines | True |
/usr/local/lib/python3.7/site-packages/pandas/io/parsers.py
in _read
chunksize = _validate_integer("chunksize", kwds.get("chunksize", None), 1)
nrows = kwds.get("nrows", None)
# Check for duplicates in names.
_validate_names(kwds.get("names", None))
# Create the parser.
parser = TextFileReader(fp_or_buf, **kwds)...
if chunksize or iterator:
return parser
try:
data = parser.read(nrows)
Variable | Value |
---|---|
_ | None |
chunksize | None |
compression | None |
encoding | None |
filepath_or_buffer | 'static/Data/observe/20201125/RiskData.20201125.csv' |
fp_or_buf | 'static/Data/observe/20201125/RiskData.20201125.csv' |
iterator | False |
kwds | {'cache_dates': True, 'chunksize': None, 'comment': None, 'compression': None, 'converters': None, 'date_parser': None, 'dayfirst': False, 'decimal': b'.', 'delim_whitespace': False, 'delimiter': ',', 'dialect': None, 'doublequote': True, 'dtype': None, 'encoding': None, 'engine': 'c', 'engine_specified': False, 'error_bad_lines': True, 'escapechar': None, 'false_values': None, 'float_precision': None, 'header': 'infer', 'index_col': None, 'infer_datetime_format': False, 'iterator': False, 'keep_date_col': False, 'keep_default_na': True, 'lineterminator': None, 'low_memory': True, 'mangle_dupe_cols': True, 'memory_map': False, 'na_filter': True, 'na_values': None, 'names': None, 'nrows': None, 'parse_dates': False, 'prefix': None, 'quotechar': '"', 'quoting': 0, 'skip_blank_lines': True, 'skipfooter': 0, 'skipinitialspace': False, 'skiprows': None, 'squeeze': False, 'thousands': None, 'true_values': None, 'usecols': None, 'verbose': False, 'warn_bad_lines': True} |
nrows | None |
should_close | False |
/usr/local/lib/python3.7/site-packages/pandas/io/parsers.py
in __init__
# might mutate self.engine
self.engine = self._check_file_or_buffer(f, engine)
self.options, self.engine = self._clean_options(options, engine)
if "has_index_names" in kwds:
self.options["has_index_names"] = kwds["has_index_names"]
self._make_engine(self.engine)...
def close(self):
self._engine.close()
def _get_options_with_defaults(self, engine):
kwds = self.orig_options
Variable | Value |
---|---|
engine | 'c' |
engine_specified | True |
f | 'static/Data/observe/20201125/RiskData.20201125.csv' |
kwds | {'cache_dates': True, 'chunksize': None, 'comment': None, 'compression': None, 'converters': None, 'date_parser': None, 'dayfirst': False, 'decimal': b'.', 'delim_whitespace': False, 'delimiter': ',', 'dialect': None, 'doublequote': True, 'dtype': None, 'encoding': None, 'engine_specified': False, 'error_bad_lines': True, 'escapechar': None, 'false_values': None, 'float_precision': None, 'header': 0, 'index_col': None, 'infer_datetime_format': False, 'iterator': False, 'keep_date_col': False, 'keep_default_na': True, 'lineterminator': None, 'low_memory': True, 'mangle_dupe_cols': True, 'memory_map': False, 'na_filter': True, 'na_values': None, 'names': None, 'nrows': None, 'parse_dates': False, 'prefix': None, 'quotechar': '"', 'quoting': 0, 'skip_blank_lines': True, 'skipfooter': 0, 'skipinitialspace': False, 'skiprows': None, 'squeeze': False, 'thousands': None, 'true_values': None, 'usecols': None, 'verbose': False, 'warn_bad_lines': True} |
options | {'cache_dates': True, 'comment': None, 'compression': None, 'converters': None, 'date_parser': None, 'dayfirst': False, 'decimal': b'.', 'delim_whitespace': False, 'delimiter': ',', 'doublequote': True, 'dtype': None, 'encoding': None, 'error_bad_lines': True, 'escapechar': None, 'false_values': None, 'float_precision': None, 'header': 0, 'index_col': None, 'infer_datetime_format': False, 'keep_date_col': False, 'keep_default_na': True, 'lineterminator': None, 'low_memory': True, 'mangle_dupe_cols': True, 'memory_map': False, 'na_filter': True, 'na_values': None, 'names': None, 'parse_dates': False, 'prefix': None, 'quotechar': '"', 'quoting': 0, 'skip_blank_lines': True, 'skipfooter': 0, 'skipinitialspace': False, 'skiprows': None, 'thousands': None, 'true_values': None, 'usecols': None, 'verbose': False, 'warn_bad_lines': True} |
self | <pandas.io.parsers.TextFileReader object at 0x7fba67b35780> |
/usr/local/lib/python3.7/site-packages/pandas/io/parsers.py
in _make_engine
return self.get_chunk()
except StopIteration:
self.close()
raise
def _make_engine(self, engine="c"):
if engine == "c":
self._engine = CParserWrapper(self.f, **self.options)...
else:
if engine == "python":
klass = PythonParser
elif engine == "python-fwf":
klass = FixedWidthFieldParser
else:
Variable | Value |
---|---|
engine | 'c' |
self | <pandas.io.parsers.TextFileReader object at 0x7fba67b35780> |
/usr/local/lib/python3.7/site-packages/pandas/io/parsers.py
in __init__
# #2442
kwds["allow_leading_cols"] = self.index_col is not False
# GH20529, validate usecol arg before TextReader
self.usecols, self.usecols_dtype = _validate_usecols_arg(kwds["usecols"])
kwds["usecols"] = self.usecols
self._reader = parsers.TextReader(src, **kwds)...
self.unnamed_cols = self._reader.unnamed_cols
passed_names = self.names is None
if self._reader.header is None:
self.names = None
Variable | Value |
---|---|
kwds | {'allow_leading_cols': True, 'comment': None, 'compression': None, 'converters': {}, 'decimal': b'.', 'delim_whitespace': False, 'delimiter': ',', 'doublequote': True, 'dtype': None, 'encoding': None, 'error_bad_lines': True, 'escapechar': None, 'false_values': None, 'float_precision': None, 'header': 0, 'index_col': None, 'keep_default_na': True, 'lineterminator': None, 'low_memory': True, 'mangle_dupe_cols': True, 'memory_map': False, 'na_filter': True, 'na_fvalues': set(), 'na_values': {'', '#N/A', '#N/A N/A', '#NA', '-1.#IND', '-1.#QNAN', '-NaN', '-nan', '1.#IND', '1.#QNAN', 'N/A', 'NA', 'NULL', 'NaN', 'n/a', 'nan', 'null'}, 'names': None, 'quotechar': '"', 'quoting': 0, 'skip_blank_lines': True, 'skipinitialspace': False, 'skiprows': None, 'thousands': None, 'true_values': None, 'usecols': None, 'verbose': False, 'warn_bad_lines': True} |
self | <pandas.io.parsers.CParserWrapper object at 0x7fba67b356d8> |
src | 'static/Data/observe/20201125/RiskData.20201125.csv' |
pandas/_libs/parsers.pyx
in pandas._libs.parsers.TextReader.__cinit__
<source code not available>...
Variable | Value |
---|---|
CParserError | <class 'pandas.errors.ParserError'> |
Categorical | <class 'pandas.core.arrays.categorical.Categorical'> |
DEFAULT_CHUNKSIZE | 262144 |
DtypeWarning | <class 'pandas.errors.DtypeWarning'> |
ENOENT | 2 |
EmptyDataError | <class 'pandas.errors.EmptyDataError'> |
ParserError | <class 'pandas.errors.ParserError'> |
ParserWarning | <class 'pandas.errors.ParserWarning'> |
QUOTE_MINIMAL | 0 |
QUOTE_NONE | 3 |
QUOTE_NONNUMERIC | 2 |
TextReader | <class 'pandas._libs.parsers.TextReader'> |
_NA_VALUES | [b'', b'N/A', b'#NA', b'nan', b'-NaN', b'1.#IND', b'NaN', b'-1.#IND', b'n/a', b'1.#QNAN', b'#N/A', b'NA', b'null', b'-nan', b'-1.#QNAN', b'NULL', b'#N/A N/A'] |
__builtins__ | <module 'builtins' (built-in)> |
__doc__ | None |
__file__ | '/usr/local/lib/python3.7/site-packages/pandas/_libs/parsers.cpython-37m-x86_64-linux-gnu.so' |
__loader__ | <_frozen_importlib_external.ExtensionFileLoader object at 0x7fba743fb4e0> |
__name__ | 'pandas._libs.parsers' |
__package__ | 'pandas._libs' |
__pyx_unpickle_Enum | <built-in function __pyx_unpickle_Enum> |
__spec__ | ModuleSpec(name='pandas._libs.parsers', loader=<_frozen_importlib_external.ExtensionFileLoader object at 0x7fba743fb4e0>, origin='/usr/local/lib/python3.7/site-packages/pandas/_libs/parsers.cpython-37m-x86_64-linux-gnu.so') |
__test__ | {} |
_compute_na_values | <built-in function _compute_na_values> |
_concatenate_chunks | <built-in function _concatenate_chunks> |
_ensure_encoded | <built-in function _ensure_encoded> |
_get_lzma_file | <function _get_lzma_file at 0x7fba7ad09730> |
_import_lzma | <function _import_lzma at 0x7fba7ad096a8> |
_maybe_encode | <built-in function _maybe_encode> |
_maybe_upcast | <built-in function _maybe_upcast> |
bz2 | <module 'bz2' from '/usr/local/lib/python3.7/bz2.py'> |
gzip | <module 'gzip' from '/usr/local/lib/python3.7/gzip.py'> |
icom | <module 'pandas.io.common' from '/usr/local/lib/python3.7/site-packages/pandas/io/common.py'> |
is_bool_dtype | <function is_bool_dtype at 0x7fba77524e18> |
is_categorical_dtype | <function is_categorical_dtype at 0x7fba77524268> |
is_datetime64_dtype | <function is_datetime64_dtype at 0x7fba7751ef28> |
is_extension_array_dtype | <function is_extension_array_dtype at 0x7fba77524f28> |
is_float_dtype | <function is_float_dtype at 0x7fba77524d90> |
is_integer_dtype | <function is_integer_dtype at 0x7fba77524620> |
is_object_dtype | <function is_object_dtype at 0x7fba7751eb70> |
k | <class 'numpy.object_'> |
lib | <module 'pandas._libs.lib' from '/usr/local/lib/python3.7/site-packages/pandas/_libs/lib.cpython-37m-x86_64-linux-gnu.so'> |
lzma | None |
na_values | {<class 'numpy.float64'>: nan, <class 'numpy.uint64'>: 18446744073709551615, <class 'numpy.uint32'>: 4294967295, <class 'numpy.uint16'>: 65535, <class 'numpy.uint8'>: 255, dtype('int8'): -128, <class 'numpy.int64'>: -9223372036854775808, <class 'numpy.int32'>: -2147483648, <class 'numpy.int16'>: -32768, <class 'numpy.int8'>: -128, <class 'numpy.bool_'>: 255, dtype('bool'): 255, dtype('uint8'): 255, dtype('int16'): -32768, dtype('uint16'): 65535, dtype('int32'): -2147483648, dtype('uint32'): 4294967295, dtype('int64'): -9223372036854775808, dtype('uint64'): 18446744073709551615, dtype('float64'): nan, <class 'numpy.object_'>: nan, dtype('O'): nan} |
np | <module 'numpy' from '/usr/local/lib/python3.7/site-packages/numpy/__init__.py'> |
os | <module 'os' from '/usr/local/lib/python3.7/os.py'> |
pandas_dtype | <function pandas_dtype at 0x7fba77525378> |
sanitize_objects | <built-in function sanitize_objects> |
sys | <module 'sys' (built-in)> |
time | <module 'time' (built-in)> |
union_categoricals | <function union_categoricals at 0x7fba76cef048> |
warnings | <module 'warnings' from '/usr/local/lib/python3.7/warnings.py'> |
zipfile | <module 'zipfile' from '/usr/local/lib/python3.7/zipfile.py'> |
pandas/_libs/parsers.pyx
in pandas._libs.parsers.TextReader._setup_parser_source
<source code not available>...
Variable | Value |
---|---|
CParserError | <class 'pandas.errors.ParserError'> |
Categorical | <class 'pandas.core.arrays.categorical.Categorical'> |
DEFAULT_CHUNKSIZE | 262144 |
DtypeWarning | <class 'pandas.errors.DtypeWarning'> |
ENOENT | 2 |
EmptyDataError | <class 'pandas.errors.EmptyDataError'> |
ParserError | <class 'pandas.errors.ParserError'> |
ParserWarning | <class 'pandas.errors.ParserWarning'> |
QUOTE_MINIMAL | 0 |
QUOTE_NONE | 3 |
QUOTE_NONNUMERIC | 2 |
TextReader | <class 'pandas._libs.parsers.TextReader'> |
_NA_VALUES | [b'', b'N/A', b'#NA', b'nan', b'-NaN', b'1.#IND', b'NaN', b'-1.#IND', b'n/a', b'1.#QNAN', b'#N/A', b'NA', b'null', b'-nan', b'-1.#QNAN', b'NULL', b'#N/A N/A'] |
__builtins__ | <module 'builtins' (built-in)> |
__doc__ | None |
__file__ | '/usr/local/lib/python3.7/site-packages/pandas/_libs/parsers.cpython-37m-x86_64-linux-gnu.so' |
__loader__ | <_frozen_importlib_external.ExtensionFileLoader object at 0x7fba743fb4e0> |
__name__ | 'pandas._libs.parsers' |
__package__ | 'pandas._libs' |
__pyx_unpickle_Enum | <built-in function __pyx_unpickle_Enum> |
__spec__ | ModuleSpec(name='pandas._libs.parsers', loader=<_frozen_importlib_external.ExtensionFileLoader object at 0x7fba743fb4e0>, origin='/usr/local/lib/python3.7/site-packages/pandas/_libs/parsers.cpython-37m-x86_64-linux-gnu.so') |
__test__ | {} |
_compute_na_values | <built-in function _compute_na_values> |
_concatenate_chunks | <built-in function _concatenate_chunks> |
_ensure_encoded | <built-in function _ensure_encoded> |
_get_lzma_file | <function _get_lzma_file at 0x7fba7ad09730> |
_import_lzma | <function _import_lzma at 0x7fba7ad096a8> |
_maybe_encode | <built-in function _maybe_encode> |
_maybe_upcast | <built-in function _maybe_upcast> |
bz2 | <module 'bz2' from '/usr/local/lib/python3.7/bz2.py'> |
gzip | <module 'gzip' from '/usr/local/lib/python3.7/gzip.py'> |
icom | <module 'pandas.io.common' from '/usr/local/lib/python3.7/site-packages/pandas/io/common.py'> |
is_bool_dtype | <function is_bool_dtype at 0x7fba77524e18> |
is_categorical_dtype | <function is_categorical_dtype at 0x7fba77524268> |
is_datetime64_dtype | <function is_datetime64_dtype at 0x7fba7751ef28> |
is_extension_array_dtype | <function is_extension_array_dtype at 0x7fba77524f28> |
is_float_dtype | <function is_float_dtype at 0x7fba77524d90> |
is_integer_dtype | <function is_integer_dtype at 0x7fba77524620> |
is_object_dtype | <function is_object_dtype at 0x7fba7751eb70> |
k | <class 'numpy.object_'> |
lib | <module 'pandas._libs.lib' from '/usr/local/lib/python3.7/site-packages/pandas/_libs/lib.cpython-37m-x86_64-linux-gnu.so'> |
lzma | None |
na_values | {<class 'numpy.float64'>: nan, <class 'numpy.uint64'>: 18446744073709551615, <class 'numpy.uint32'>: 4294967295, <class 'numpy.uint16'>: 65535, <class 'numpy.uint8'>: 255, dtype('int8'): -128, <class 'numpy.int64'>: -9223372036854775808, <class 'numpy.int32'>: -2147483648, <class 'numpy.int16'>: -32768, <class 'numpy.int8'>: -128, <class 'numpy.bool_'>: 255, dtype('bool'): 255, dtype('uint8'): 255, dtype('int16'): -32768, dtype('uint16'): 65535, dtype('int32'): -2147483648, dtype('uint32'): 4294967295, dtype('int64'): -9223372036854775808, dtype('uint64'): 18446744073709551615, dtype('float64'): nan, <class 'numpy.object_'>: nan, dtype('O'): nan} |
np | <module 'numpy' from '/usr/local/lib/python3.7/site-packages/numpy/__init__.py'> |
os | <module 'os' from '/usr/local/lib/python3.7/os.py'> |
pandas_dtype | <function pandas_dtype at 0x7fba77525378> |
sanitize_objects | <built-in function sanitize_objects> |
sys | <module 'sys' (built-in)> |
time | <module 'time' (built-in)> |
union_categoricals | <function union_categoricals at 0x7fba76cef048> |
warnings | <module 'warnings' from '/usr/local/lib/python3.7/warnings.py'> |
zipfile | <module 'zipfile' from '/usr/local/lib/python3.7/zipfile.py'> |
AnonymousUser
Variable | Value |
---|---|
obs | '20201125' |
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
CONTENT_LENGTH | '' |
CONTENT_TYPE | 'text/plain' |
DJANGO_SETTINGS_MODULE | 'webapp.settings' |
GATEWAY_INTERFACE | 'CGI/1.1' |
HISTCONTROL | 'ignoredups' |
HISTSIZE | '1000' |
HOME | '/root' |
HOSTNAME | 'wrf.tmd.go.th' |
HTTP_ACCEPT | '*/*' |
HTTP_HOST | 'www.model.tmd.go.th' |
HTTP_USER_AGENT | 'claudebot' |
LANG | 'en_US.UTF-8' |
LESSOPEN | '||/usr/bin/lesspipe.sh %s' |
LOGNAME | 'root' |
LS_COLORS | 'rs=0:di=38;5;27:ln=38;5;51:mh=44;38;5;15:pi=40;38;5;11:so=38;5;13:do=38;5;5:bd=48;5;232;38;5;11:cd=48;5;232;38;5;3:or=48;5;232;38;5;9:mi=05;48;5;232;38;5;15:su=48;5;196;38;5;15:sg=48;5;11;38;5;16:ca=48;5;196;38;5;226:tw=48;5;10;38;5;16:ow=48;5;10;38;5;21:st=48;5;21;38;5;15:ex=38;5;34:*.tar=38;5;9:*.tgz=38;5;9:*.arc=38;5;9:*.arj=38;5;9:*.taz=38;5;9:*.lha=38;5;9:*.lz4=38;5;9:*.lzh=38;5;9:*.lzma=38;5;9:*.tlz=38;5;9:*.txz=38;5;9:*.tzo=38;5;9:*.t7z=38;5;9:*.zip=38;5;9:*.z=38;5;9:*.Z=38;5;9:*.dz=38;5;9:*.gz=38;5;9:*.lrz=38;5;9:*.lz=38;5;9:*.lzo=38;5;9:*.xz=38;5;9:*.bz2=38;5;9:*.bz=38;5;9:*.tbz=38;5;9:*.tbz2=38;5;9:*.tz=38;5;9:*.deb=38;5;9:*.rpm=38;5;9:*.jar=38;5;9:*.war=38;5;9:*.ear=38;5;9:*.sar=38;5;9:*.rar=38;5;9:*.alz=38;5;9:*.ace=38;5;9:*.zoo=38;5;9:*.cpio=38;5;9:*.7z=38;5;9:*.rz=38;5;9:*.cab=38;5;9:*.jpg=38;5;13:*.jpeg=38;5;13:*.gif=38;5;13:*.bmp=38;5;13:*.pbm=38;5;13:*.pgm=38;5;13:*.ppm=38;5;13:*.tga=38;5;13:*.xbm=38;5;13:*.xpm=38;5;13:*.tif=38;5;13:*.tiff=38;5;13:*.png=38;5;13:*.svg=38;5;13:*.svgz=38;5;13:*.mng=38;5;13:*.pcx=38;5;13:*.mov=38;5;13:*.mpg=38;5;13:*.mpeg=38;5;13:*.m2v=38;5;13:*.mkv=38;5;13:*.webm=38;5;13:*.ogm=38;5;13:*.mp4=38;5;13:*.m4v=38;5;13:*.mp4v=38;5;13:*.vob=38;5;13:*.qt=38;5;13:*.nuv=38;5;13:*.wmv=38;5;13:*.asf=38;5;13:*.rm=38;5;13:*.rmvb=38;5;13:*.flc=38;5;13:*.avi=38;5;13:*.fli=38;5;13:*.flv=38;5;13:*.gl=38;5;13:*.dl=38;5;13:*.xcf=38;5;13:*.xwd=38;5;13:*.yuv=38;5;13:*.cgm=38;5;13:*.emf=38;5;13:*.axv=38;5;13:*.anx=38;5;13:*.ogv=38;5;13:*.ogx=38;5;13:*.aac=38;5;45:*.au=38;5;45:*.flac=38;5;45:*.mid=38;5;45:*.midi=38;5;45:*.mka=38;5;45:*.mp3=38;5;45:*.mpc=38;5;45:*.ogg=38;5;45:*.ra=38;5;45:*.wav=38;5;45:*.axa=38;5;45:*.oga=38;5;45:*.spx=38;5;45:*.xspf=38;5;45:' |
'/var/spool/mail/root' |
|
OLDPWD | '/root' |
PATH | '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin' |
PATH_INFO | '/RSrisk/' |
PWD | '/home/nwpwww/webapp' |
QUERY_STRING | 'obs=20201125' |
REMOTE_ADDR | '54.196.52.45' |
REMOTE_HOST | '' |
REQUEST_METHOD | 'GET' |
RUN_MAIN | 'true' |
SCRIPT_NAME | '' |
SELINUX_LEVEL_REQUESTED | '' |
SELINUX_ROLE_REQUESTED | '' |
SELINUX_USE_CURRENT_RANGE | '' |
SERVER_NAME | 'wrf.tmd.go.th' |
SERVER_PORT | '80' |
SERVER_PROTOCOL | 'HTTP/1.1' |
SERVER_SOFTWARE | 'WSGIServer/0.2' |
SHELL | '/bin/bash' |
SHLVL | '1' |
SSH_CLIENT | '10.0.6.2 63132 22' |
SSH_CONNECTION | '10.0.6.2 63132 192.168.169.51 22' |
SSH_TTY | '/dev/pts/0' |
TERM | 'xterm-256color' |
TZ | 'Asia/Bangkok' |
USER | 'root' |
XDG_DATA_DIRS | '/root/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share' |
XDG_RUNTIME_DIR | '/run/user/0' |
XDG_SESSION_ID | '78493' |
_ | '/usr/local/bin/python3' |
wsgi.errors | <_io.TextIOWrapper name='<stderr>' mode='w' encoding='UTF-8'> |
wsgi.file_wrapper | '' |
wsgi.input | <_io.BufferedReader name=10> |
wsgi.multiprocess | False |
wsgi.multithread | True |
wsgi.run_once | False |
wsgi.url_scheme | 'http' |
wsgi.version | (1, 0) |
webapp.settings
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | [] |
ALLOWED_HOSTS | ['119.46.126.102', 'www.model.tmd.go.th', '192.168.169.51', 'localhost', '127.0.0.1', '*'] |
APPEND_SLASH | True |
AUTHENTICATION_BACKENDS | ['django.contrib.auth.backends.ModelBackend'] |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'auth.User' |
BASE_DIR | '/home/nwpwww/webapp' |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CSRF_COOKIE_AGE | 31449600 |
CSRF_COOKIE_DOMAIN | None |
CSRF_COOKIE_HTTPONLY | False |
CSRF_COOKIE_NAME | 'csrftoken' |
CSRF_COOKIE_PATH | '/' |
CSRF_COOKIE_SAMESITE | 'Lax' |
CSRF_COOKIE_SECURE | True |
CSRF_FAILURE_VIEW | 'django.views.csrf.csrf_failure' |
CSRF_HEADER_NAME | 'HTTP_X_CSRFTOKEN' |
CSRF_TRUSTED_ORIGINS | [] |
CSRF_USE_SESSIONS | False |
DATABASES | {'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'ENGINE': 'django.db.backends.sqlite3', 'HOST': '', 'NAME': '/home/nwpwww/webapp/db.sqlite3', 'OPTIONS': {}, 'PASSWORD': '********************', 'PORT': '', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': ''}} |
DATABASE_ROUTERS | [] |
DATA_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
DATA_UPLOAD_MAX_NUMBER_FIELDS | 1000 |
DATETIME_FORMAT | 'N j, Y, P' |
DATETIME_INPUT_FORMATS | ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', '%Y-%m-%d %H:%M', '%Y-%m-%d', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%Y', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M', '%m/%d/%y'] |
DATE_FORMAT | 'N j, Y' |
DATE_INPUT_FORMATS | ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y'] |
DEBUG | True |
DEBUG_PROPAGATE_EXCEPTIONS | False |
DECIMAL_SEPARATOR | '.' |
DEFAULT_CHARSET | 'utf-8' |
DEFAULT_CONTENT_TYPE | 'text/html' |
DEFAULT_EXCEPTION_REPORTER_FILTER | 'django.views.debug.SafeExceptionReporterFilter' |
DEFAULT_FILE_STORAGE | 'django.core.files.storage.FileSystemStorage' |
DEFAULT_FROM_EMAIL | 'webmaster@localhost' |
DEFAULT_INDEX_TABLESPACE | '' |
DEFAULT_TABLESPACE | '' |
DISALLOWED_USER_AGENTS | [] |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_HOST | 'localhost' |
EMAIL_HOST_PASSWORD | '********************' |
EMAIL_HOST_USER | '' |
EMAIL_PORT | 25 |
EMAIL_SSL_CERTFILE | None |
EMAIL_SSL_KEYFILE | '********************' |
EMAIL_SUBJECT_PREFIX | '[Django] ' |
EMAIL_TIMEOUT | None |
EMAIL_USE_LOCALTIME | False |
EMAIL_USE_SSL | False |
EMAIL_USE_TLS | False |
FILE_CHARSET | 'utf-8' |
FILE_UPLOAD_DIRECTORY_PERMISSIONS | None |
FILE_UPLOAD_HANDLERS | ['django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler'] |
FILE_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
FILE_UPLOAD_PERMISSIONS | None |
FILE_UPLOAD_TEMP_DIR | None |
FIRST_DAY_OF_WEEK | 0 |
FIXTURE_DIRS | [] |
FORCE_SCRIPT_NAME | None |
FORMAT_MODULE_PATH | None |
FORM_RENDERER | 'django.forms.renderers.DjangoTemplates' |
IGNORABLE_404_URLS | [] |
INSTALLED_APPS | ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'sslserver'] |
INTERNAL_IPS | [] |
LANGUAGES | [('af', 'Afrikaans'), ('ar', 'Arabic'), ('ast', 'Asturian'), ('az', 'Azerbaijani'), ('bg', 'Bulgarian'), ('be', 'Belarusian'), ('bn', 'Bengali'), ('br', 'Breton'), ('bs', 'Bosnian'), ('ca', 'Catalan'), ('cs', 'Czech'), ('cy', 'Welsh'), ('da', 'Danish'), ('de', 'German'), ('dsb', 'Lower Sorbian'), ('el', 'Greek'), ('en', 'English'), ('en-au', 'Australian English'), ('en-gb', 'British English'), ('eo', 'Esperanto'), ('es', 'Spanish'), ('es-ar', 'Argentinian Spanish'), ('es-co', 'Colombian Spanish'), ('es-mx', 'Mexican Spanish'), ('es-ni', 'Nicaraguan Spanish'), ('es-ve', 'Venezuelan Spanish'), ('et', 'Estonian'), ('eu', 'Basque'), ('fa', 'Persian'), ('fi', 'Finnish'), ('fr', 'French'), ('fy', 'Frisian'), ('ga', 'Irish'), ('gd', 'Scottish Gaelic'), ('gl', 'Galician'), ('he', 'Hebrew'), ('hi', 'Hindi'), ('hr', 'Croatian'), ('hsb', 'Upper Sorbian'), ('hu', 'Hungarian'), ('ia', 'Interlingua'), ('id', 'Indonesian'), ('io', 'Ido'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja', 'Japanese'), ('ka', 'Georgian'), ('kab', 'Kabyle'), ('kk', 'Kazakh'), ('km', 'Khmer'), ('kn', 'Kannada'), ('ko', 'Korean'), ('lb', 'Luxembourgish'), ('lt', 'Lithuanian'), ('lv', 'Latvian'), ('mk', 'Macedonian'), ('ml', 'Malayalam'), ('mn', 'Mongolian'), ('mr', 'Marathi'), ('my', 'Burmese'), ('nb', 'Norwegian Bokmål'), ('ne', 'Nepali'), ('nl', 'Dutch'), ('nn', 'Norwegian Nynorsk'), ('os', 'Ossetic'), ('pa', 'Punjabi'), ('pl', 'Polish'), ('pt', 'Portuguese'), ('pt-br', 'Brazilian Portuguese'), ('ro', 'Romanian'), ('ru', 'Russian'), ('sk', 'Slovak'), ('sl', 'Slovenian'), ('sq', 'Albanian'), ('sr', 'Serbian'), ('sr-latn', 'Serbian Latin'), ('sv', 'Swedish'), ('sw', 'Swahili'), ('ta', 'Tamil'), ('te', 'Telugu'), ('th', 'Thai'), ('tr', 'Turkish'), ('tt', 'Tatar'), ('udm', 'Udmurt'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('vi', 'Vietnamese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant', 'Traditional Chinese')] |
LANGUAGES_BIDI | ['he', 'ar', 'fa', 'ur'] |
LANGUAGE_CODE | 'en-us' |
LANGUAGE_COOKIE_AGE | None |
LANGUAGE_COOKIE_DOMAIN | None |
LANGUAGE_COOKIE_NAME | 'django_language' |
LANGUAGE_COOKIE_PATH | '/' |
LOCALE_PATHS | [] |
LOGGING | {} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/accounts/profile/' |
LOGIN_URL | '/accounts/login/' |
LOGOUT_REDIRECT_URL | None |
MANAGERS | [] |
MEDIA_ROOT | '' |
MEDIA_URL | '' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ['django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware'] |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | 'F j' |
NUMBER_GROUPING | 0 |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT_DAYS | '********************' |
PREPEND_WWW | False |
ROOT_URLCONF | 'webapp.urls' |
SECRET_KEY | '********************' |
SECURE_BROWSER_XSS_FILTER | False |
SECURE_CONTENT_TYPE_NOSNIFF | False |
SECURE_HSTS_INCLUDE_SUBDOMAINS | False |
SECURE_HSTS_PRELOAD | False |
SECURE_HSTS_SECONDS | 0 |
SECURE_PROXY_SSL_HEADER | None |
SECURE_REDIRECT_EXEMPT | [] |
SECURE_SSL_HOST | None |
SECURE_SSL_REDIRECT | False |
SERVER_EMAIL | 'root@localhost' |
SESSION_CACHE_ALIAS | 'default' |
SESSION_COOKIE_AGE | 1209600 |
SESSION_COOKIE_DOMAIN | None |
SESSION_COOKIE_HTTPONLY | True |
SESSION_COOKIE_NAME | 'sessionid' |
SESSION_COOKIE_PATH | '/' |
SESSION_COOKIE_SAMESITE | 'Lax' |
SESSION_COOKIE_SECURE | True |
SESSION_ENGINE | 'django.contrib.sessions.backends.db' |
SESSION_EXPIRE_AT_BROWSER_CLOSE | False |
SESSION_FILE_PATH | None |
SESSION_SAVE_EVERY_REQUEST | False |
SESSION_SERIALIZER | 'django.contrib.sessions.serializers.JSONSerializer' |
SETTINGS_MODULE | 'webapp.settings' |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | [] |
STATICFILES_DIRS | ['/home/nwpwww/webapp/static'] |
STATICFILES_FINDERS | ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder'] |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | None |
STATIC_URL | '/static/' |
TEMPLATES | [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['Templates/'], 'OPTIONS': {'context_processors': ['django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages']}}] |
TEST_NON_SERIALIZED_APPS | [] |
TEST_RUNNER | 'django.test.runner.DiscoverRunner' |
THOUSAND_SEPARATOR | ',' |
TIME_FORMAT | 'P' |
TIME_INPUT_FORMATS | ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M'] |
TIME_ZONE | 'Asia/Bangkok' |
USE_I18N | True |
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | True |
USE_X_FORWARDED_HOST | False |
USE_X_FORWARDED_PORT | False |
WSGI_APPLICATION | 'webapp.wsgi.application' |
X_FRAME_OPTIONS | 'SAMEORIGIN' |
YEAR_MONTH_FORMAT | 'F Y' |
You're seeing this error because you have DEBUG = True
in your
Django settings file. Change that to False
, and Django will
display a standard page generated by the handler for this status code.