I'd like to photograph NEOWISE from Los Angeles, what is the optimal time?
I don't know if this is helpful but using the Python package Skyfield one can calculate the positions of things including comet C/2020 F3 (NEOWISE) and the times that they rise and set for the month of July:

Here are the rise and set times of the Sun and the comet for reference for the next week
sunset:  2020-07-12T03:06:17Z
sunrise:  2020-07-12T12:51:20Z
sunset:  2020-07-13T03:05:55Z
sunrise:  2020-07-13T12:51:56Z
sunset:  2020-07-14T03:05:32Z
sunrise:  2020-07-14T12:52:33Z
sunset:  2020-07-15T03:05:07Z
sunrise:  2020-07-15T12:53:10Z
sunset:  2020-07-16T03:04:41Z
sunrise:  2020-07-16T12:53:48Z
sunset:  2020-07-17T03:04:13Z
sunrise:  2020-07-17T12:54:27Z
sunset:  2020-07-18T03:03:43Z
sunrise:  2020-07-18T12:55:06Z

cometset:  2020-07-12T04:15:12Z
cometrise:  2020-07-12T10:46:43Z
cometset:  2020-07-13T04:34:10Z
cometrise:  2020-07-13T10:48:01Z
cometset:  2020-07-14T04:54:27Z
cometrise:  2020-07-14T10:51:29Z
cometset:  2020-07-15T05:15:33Z
cometrise:  2020-07-15T10:57:33Z
cometset:  2020-07-16T05:36:48Z
cometrise:  2020-07-16T11:06:45Z
cometset:  2020-07-17T05:57:17Z
cometrise:  2020-07-17T11:19:29Z
cometset:  2020-07-18T06:16:07Z
cometrise:  2020-07-18T11:36:02Z

Here's the python script:
from skyfield.api import Topos
from skyfield.api import Loader
from skyfield.data import mpc
from skyfield import almanac
import numpy as np
import matplotlib.pyplot as plt
from skyfield.constants import GM_SUN_Pitjeva_2005_km3_s2 as GM_SUN

from skyfield.api import load
loaddata = Loader('~/Documents/fishing/SkyData')  # avoids multiple copies of large files

ts = loaddata.timescale() # include builtin=True if you want to use older files (you may miss some leap-seconds)

with load.open(mpc.COMET_URL) as f:
    comets = mpc.load_comets_dataframe(f)

comets = comets.set_index('designation', drop=False)

print(len(comets), 'comets loaded')

row = comets.loc['C/2020 F3 (NEOWISE)']
print(row)

eph = loaddata('de421.bsp')

earth, sun, moon = [eph[x] for x in ('earth', 'sun', 'moon')]

comet = sun + mpc.comet_orbit(row, ts, GM_SUN)

times = ts.utc(2020, 7, range(1, 32))
ra, dec, distance = earth.at(times).observe(comet).radec()

RA, Dec = [thing._degrees for thing in (ra, dec)]

plt.plot(RA, Dec, 'ok')
plt.gca().set_aspect('equal')
plt.show()

t0 = ts.utc(2020, 7, 12)
t1 = ts.utc(2020, 7, 19)
LA = Topos('34.05 N', '118.25 W') # 34.05, -118.25

times, is_sunrises = almanac.find_discrete(t0, t1, almanac.sunrise_sunset(eph, LA))
for time, is_sunrise in zip(times, is_sunrises):
    if is_sunrise:
        print('sunrise: ', time.utc_iso())
    else:
        print('sunset: ', time.utc_iso())

times, is_rises = almanac.find_discrete(t0, t1, almanac.risings_and_settings(eph, comet, LA))
for time, is_sunrise in zip(times, is_rises):
    if is_sunrise:
        print('cometrise: ', time.utc_iso())
    else:
        print('cometset: ', time.utc_iso())