简体   繁体   中英

Getting an error "ValueError: invalid literal for int() with base 10: '3128;' while running the Tensorflow training example

So I did trace the error all the way back to the original file "client.py" and the error is clearly that there is a semicolon left trailing on the host variable. I am actually just running sample code though FROM tensorflow samples and I don't expect that I'd be required to change any of these files. Any idea where the semicolon come from? I'm using py = python3 to execute but I haven't changed anything

In the iris_data.py the variables passed are

TRAIN_URL = " http://download.tensorflow.org/data/iris_training.csv "

TEST_URL = " http://download.tensorflow.org/data/iris_test.csv "

C:\Python3\Lib\site-packages\tensorflow\models\samples\core\get_started>py premade_estimator.py
Downloading data from http://download.tensorflow.org/data/iris_training.csv
Traceback (most recent call last):
  File "C:\Python3\lib\http\client.py", line 798, in _get_hostport
    port = int(host[i+1:])
ValueError: invalid literal for int() with base 10: '3128;'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "premade_estimator.py", line 88, in <module>
    tf.app.run(main)
  File "C:\Python3\lib\site-packages\tensorflow\python\platform\app.py", line 124, in run
    _sys.exit(main(argv))
  File "premade_estimator.py", line 34, in main
    (train_x, train_y), (test_x, test_y) = iris_data.load_data()
  File "C:\Python3\Lib\site-packages\tensorflow\models\samples\core\get_started\iris_data.py", line 19, in load_data
    train_path, test_path = maybe_download()
  File "C:\Python3\Lib\site-packages\tensorflow\models\samples\core\get_started\iris_data.py", line 12, in maybe_download
    train_path = tf.keras.utils.get_file(TRAIN_URL.split('/')[-1], TRAIN_URL)
  File "C:\Python3\lib\site-packages\tensorflow\python\keras\_impl\keras\utils\data_utils.py", line 238, in get_file
    urlretrieve(origin, fpath, dl_progress)
  File "C:\Python3\lib\urllib\request.py", line 188, in urlretrieve
    with contextlib.closing(urlopen(url, data)) as fp:
  File "C:\Python3\lib\urllib\request.py", line 163, in urlopen
    return opener.open(url, data, timeout)
  File "C:\Python3\lib\urllib\request.py", line 466, in open
    response = self._open(req, data)
  File "C:\Python3\lib\urllib\request.py", line 484, in _open
    '_open', req)
  File "C:\Python3\lib\urllib\request.py", line 444, in _call_chain
    result = func(*args)
  File "C:\Python3\lib\urllib\request.py", line 1282, in http_open
    return self.do_open(http.client.HTTPConnection, req)
  File "C:\Python3\lib\urllib\request.py", line 1223, in do_open
    h = http_class(host, timeout=req.timeout, **http_conn_args)
  File "C:\Python3\lib\http\client.py", line 762, in __init__
    (self.host, self.port) = self._get_hostport(host, port)
  File "C:\Python3\lib\http\client.py", line 803, in _get_hostport
    raise InvalidURL("nonnumeric port: '%s'" % host[i+1:])
http.client.InvalidURL: nonnumeric port: '3128;'

I managed to run the example but didn't reolve the URLproblem

  1. Download the csv file to the get_started directory
  2. Open iris_data.py and set the path of TRAIN_URL and TEST_URL to the csv files

     TRAIN_URL = "iris_training.csv" TEST_URL = "iris_test.csv" 
  3. find the maybe_download function (line 11), comment out the implementation
  4. Go to the function load_data() and comment out maybe_download() function call line
  5. set train_path=TRAIN_URL and test_path = TEST_URL underneath that and before the pd.read_csv

     train_path = TRAIN_URL test_path = TEST_URL train = pd.read_csv(train_path, names=CSV_COLUMN_NAMES, header=0) 

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM