Вы можете использовать функции PHP cURL для достижения этой функциональности:
// create a new cURL resource
$ch = curl_init();
// set URL and other appropriate options
curl_setopt($ch, CURLOPT_URL, 'http://www.example.com/');
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// grab URL and pass it to the browser
$urlContent = curl_exec($ch);
С этого момента вы получите информацию заголовка ответа с помощью http://www.php.net/curl-getinfo . (Есть несколько значений, которые вы можете захватить, все перечисленные в документации).
// Check if any error occured
if(!curl_errno($ch))
{
$info = curl_getinfo($ch);
header('Content-Type: '.$info['content_type']);
echo $urlContent;
}
Обязательно закройте дескриптор cURL.
// close cURL resource, and free up system resources
curl_close($ch);
import sys
sys.stdout.write('.')
Вы, возможно, также должны звонить
sys.stdout.flush()
для обеспечения stdout
, сразу сбрасывается.
Из Python 2.6 можно импортировать эти print
функция из Python 3:
from __future__ import print_function
Это позволяет Вам использовать решение Python 3 ниже.
В Python 3, print
оператор был изменен в функцию. В Python 3 можно вместо этого сделать:
print('.', end='')
Это также работает в Python 2, при условии, что Вы использовали from __future__ import print_function
.
, Если Вы испытываете затруднения буферизовать, можно сбросить вывод путем добавления flush=True
аргумент ключевого слова:
print('.', end='', flush=True)
Однако примечание, что flush
ключевое слово не доступно в версии print
функция, импортированная от [1 112] в Python 2; это только работает в Python 3, более конкретно 3.3 и позже. В более ранних версиях необходимо будет все еще сбросить вручную с вызовом к [1 113].
Примечание: заголовок этого вопроса раньше был чем-то как "Как к printf в Python?"
, Так как люди могут приехать, сюда ища его на основе заголовка, Python также поддерживает замену printf-стиля:
>>> strings = [ "one", "two", "three" ]
>>>
>>> for i in xrange(3):
... print "Item %d: %s" % (i, strings[i])
...
Item 0: one
Item 1: two
Item 2: three
И, можно ловко умножить строковые значения:
>>> print "." * 10
..........
%d
, но sizeof
возвраты size_t
, который не подписан и не обязательно размер int
. Корректный спецификатор мобильного формата %zu
. Я зафиксировал его.
– rob mayoff
4 April 2014 в 08:58
Новое (с Python 3.0) print
функция имеет дополнительное end
параметр, который позволяет Вам изменить конечный символ. Существует также sep
для разделителя.